程序编码
● 程序设计语言
- 程序设计语言的分类
- 机器语言、汇编语言
- 高级语言
- 从语言的内在特征看,高级语言可分为:
- 系统实现语言:为了克服汇编程序中的困难,提供控制语句和变量类型检验的功能(C语言)
- 静态高级语言:给程序员提供某些控制语句和变量说明的提示
- 块结构高级语言:直接提供有限形式的动态的存储分配
- 动态高级语言:动态完成内存的管理
● 结构化程序设计
结构化程序设计主要包括两方面:
- 在编写程序时,强调使用几种基本控制结构
- 在程序设计过程中,尽量采用自顶向下和逐步细化的原则,由粗到细,一步步展开
● 结构化程序设计的主要原则
- 使用语言中的顺序、选择、重复等有限的基本控制结构表示程序逻辑
- 选用的控制结构只准许有一个入口和出口
- 复杂结构应该用基本控制结构进行组合嵌套来实现
● 程序设计风格
- 源程序文档化
- 标识符的命名
- 安排注释
- 程序的视觉组织
- 数据说明
- 数据说明的次序应当规范化
- 说明语句中变量安排有序化
- 使用注释说明复杂数据结构
- 语句结构
- 在一行内只写一条语句
- 程序编写首先应当考虑清晰性
- 程序要能直截了当地说明程序员的用意
- 除非对效率有特殊要求,程序编写要做到清晰第一,效率第二
- 首先要保证程序正确,然后才要求提高速度
- 避免使用临时变量而使可读性下降
- 让编译程序做简单的优化
- 尽可能使用库函数
- 避免不必要的转移,同时如果能爆出程序可读性,则不必用Go To语句
- 尽量只采用三种基本的控制结构来编写程序
- 避免使用空的ELSE语句和IF..THEN IF…语句。这种结构容易使读者产生误解
- 避免采用过于复杂的条件测试
- 尽量减少使用“否定”条件的条件语句
- 尽可能用通俗易懂的伪码来面熟程序的流程,然后再翻译成必须使用的语言
- 数据结构要有利于程序的简化
- 要模块化
- 利用信息隐蔽,确保每一个模块的独立性
- 从数据出发去构造程序
- 不要修补不好的程序,要重新编写
- 对太大的程序,要分块测试,然后再集成
- 输入/输出方法
● 程序设计质量评价
一、正确性
- 1、程序中没有语法错误
- 2、程序运行时没有发现明确的运行错误
- 3、程序中没有不适当的语句
- 4、用有效的测试数据,得到程序的正确结果
- 5、用无效的测试数据,得到程序的正确结果
- 6、用任何可能的数据,使程序在运行时得到正确的结果
二、结构清晰性
- 1、是否用三种结构化格式表示程序的控制逻辑
- 2、是否有一个入口、一个出口
- 3、是否严格控制GOTO语句
三、易修改性
四、易读性
五、简单性