阅读笔记 > 编程需要考虑的问题
子程序
- 每一个子程序名都确切地描述了要做什么事吗?
- 每一个子程序详细定义任务吗?
- 程序会从它们的子程序中获益吗?
- 每个子程序的接口处明确吗?
数据名称
- 类型名的描述足以帮助文件数据说明吗?
- 变量名好吗?
- 变量仅用于命名这个目的吗?
- 循环计算变量能给出更多的信息吗?
- 用枚举类型变量来代替标记或逻辑变量了吗?
- 命名常量没有用来代替数字或字串吗?
- 类型名、枚举类型名、命名常量、局部变量、模块变量和全局变量中的命名规则不同吗?
数据组织
- 附加变量在需要时要清零吗?
- 变量的引用彼此间很接近吗?
- 数据结构简化会导致降低其灵活性吗?
- 复杂的数据存取是通过子程序来完成的吗?
控制
- 正常编码路径清晰吗?
- 相关语句分成一组了吗?
- 相对独立的语句都组成子程序了吗?
- 正常情况跟在 I F后,而不是 ELSE后吗?
- 控制结构简化会降低灵活性吗?
- 像一个定义完好的子程序那样,每个循环执行一个且仅一个功能吗?
- 嵌套层次是最少吗?
- 逻辑表达式用附加的逻辑变量、逻辑函数和功能表简化了吗?
布局
- 程序布局显示出它的逻辑结构吗?
设计
- 代码直观吗?它的编写巧妙吗?
- 实现细节可能隐去了吗?
- 程序编写是立足于问题域而不是计算机科学或语言结构域吗?