1、自顶向下:程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化。
2、逐步求精:对复杂问题,应设计一些子目标作为过渡,逐步细化。
3、模块化:一个复杂问题,肯定是由若干稍简单的问题构成。模块化是把程序要解决的总目标分解为子目标,再进一步分解为具体的小目标,把每一个小目标称为一个模块。
4、限制使用无条件转移语句:无条件转移语句是造成程序混乱的祸根,程序的质量与无条件转移语句的数量呈反比,应该在所有高级程序设计语言中取消无条件转移语句。取消无条件转移语句后,程序易于理解、易于排错、容易维护,容易进行正确性证明。