结构化程序设计提出的原则可以归纳为32个字:自顶向下,逐步细化;清晰第一,效率第二;书写规范,缩进格式;基本结构,组合而成。
底层的结构化程序设计
结构化的程序是以一些简单、有层次的程序流程架构所组成,可分为顺序(sequence)、选择(selection)及循环(repetition)。
● 顺序是指程序正常的执行方式,执行完一个指令后,执行后面的指令。
● 选择结构顾名思义,当程序到了一定的处理过程时,遇到了很多分支,无法按直线走下去,它需要根据某一特定选择结构表示程序的处理步骤出现了分支,它需要根据某一特定的条件选择其中的一个分支执行,选择结构有单选择、双选择和多选择三种形式。
● 不断的重复,被称作循环,所以这里的循环结构通常就是用来表示反复执行一个程序或某些操作的过程,直到某条件为假(或为真)时才可终止循环。在循环结构中最主要的是:什么时候可以执行循环?出现哪些操作需要循环执行?循环结构的基本形式有两种。当型循环和直到型循环。
● 重用测试过代码,如果重用别的程序中的部分越多,您自身的工作也越简单。在面向对象中,重用的过程更为容易一些,因为代码本身的可复用性更高。如果项目的任务不重,程序员之间的协作也更容易。
面向对象的类库中的类和框架能够帮助减轻编程任务。例如,如果您使用了苹果公司提供的软件框架,您就可以和苹果公司的程序员合作。这些框架通常构成了您的程序中比较基础的部分,而您可以把精力放在您最擅长的方面,其它的事情让类库的开发人员去做。因此,您的项目可以更快的做出原型系统,更快的完成,协作方面的问题也更少。
若一个编程语言的语法允许用成对的关键字包围一段程序,形成一个结构,这种编程语言称为有“区块结构”(block-structured),这类的结构包括用ALGOL 68的if..fi包围的程序,或是在PL/I中用BEGIN..END包围的一段程序,或是在C语言中用大括号{...}包围的一段程序。
结构化编程语言
用任何语言都可以进行结构化程序设计,不过一般较常使用程序式的编程语言。早期的结构化编程语言包括ALGOL、 Pascal、PL/I及Ada,不过后来大部份的程序式编程语言都鼓励使用结构化程序设计,有时也会特意的省去一些特性(例如不支援goto指令)使得非结构化的程序设计更加困难。