控制表
维基百科,自由的 encyclopedia
控制表是一个决定控制流程或是主要影响控制流程的表。关于控制表的结构或内容没有硬性的规定,其特点是其可以影响控制流程的能力。这类表格的设计有时称为“表格驱动设计”[1][2](不过后者多半是指由外部的表格自动生成程式码,而不是在程式中的表格)。以有限状态机为基础的自动机编程有时会用控制表为其实现方式。若控制表有几个不同的层次,其行为就类似UML状态机(英语:UML state machine)。
控制表有时会以关联表(英语:association list)的方式表示,其中会有对应的条件表示式及子程序。控制表可以简化一些类似的程式叙述,而且若是二维的控制表,在阅读及更新上都比一维特性的程式码要容易维护,有时控制表甚至可以让非程式设计师来维护。电脑科学家高德纳在1974年提出的论文《Structured Programming with go to Statements》中就提到“多路分支是一种重要的程式设计技术,但常常被一些数量不足的if指令取代”[3]。