编码风格

由于编码的依据是详细设计的结果,因此程序的质量 主要取决于设计。但是,编程的质量也在很大程度上影响着程序的质量。下面列举一些与编程有关的风格(coding style)。

1.源程序中的内部文档

在源程序中可包含一些内部文档,以帮助阅读和理解源程序。内部文档主要包括选择标识符的名字、适当的注释和程序的视觉组织。

(1)选择标识符的名字

·选择含义明确的名字,使它能正确提示标识符所代表的实体;
·名字不宜太长,太长会增加打字量,且容易出错;
·不用相似的名字,如EM、EN、EMM、ENN、EMN,因为相似的名字容易混淆,不易发现错误;
·不用关键字作标识符;
·同一名字不要有多个含义;
·名字中避免使用易混淆的数字,如数字0与字母O,数字1与字母l,数字2与字母Z等;

(2)注释

源程序中的注释用来帮助人们理解程序。注释可分为序言性注释和功能性注释。

①序言性注释

序言性注释位于每个模块的起始部分,它主要描述:
·模块的功能;
·模块的接口,包括调用格式,所有参数的解释,该模块需调用的其他子模块名;
·重要的局部变量,包括用途、约束和限制条件;
·开发历史,包括模块的设计者、评审者和评审日期,修改日期以及对修改的描述;

②功能性注释

功能性注释嵌在源程序体内,主要描述程序段的功能,书写功能性注释时应注意下列问题:
·注释要正确,错误的注释比没有注释更坏;
·为程序段作注释,而不是为每个语句作注释;
·使用空行或缩进,使注释和代码容易区分;
·注释应提供一些从程序本身难以得到的信息,而不是重复语句;

(3)程序的视觉组织

通过在程序中添加一些空格、空行和缩进等技巧,帮助人们从视觉上看清程序的结构。例如:
if( ) then
    程序段
else
    程序段
end if

通过缩进技巧,使if语句的结构一目了然。在多重嵌套的情况下,这种缩进技巧不仅能看清嵌套的层次,而且容易发现遗漏end if的错误。

2.数据说明

在程序中都有数据说明,为使数据说明便于理解,可采用下列书写数据说明的风格:
(1)显式地说明一切变量。有些程序设计语言(如FORTRAN)允许变量不作显式说明。用这种语言书写的程序往往由于缺少了类型说明而产生计算 时的误差。因此提倡显式地说明一切变量;
(2)数据说明的次序应规范化,例如先常量说明,再简单类型说明,然后构造类型说明;
(3)当多个变量出现在同一个说明语句中时,变量名应按字母顺序排列,以便于查找;
(4)在定义一个复杂的数据结构时,应通过注释来说明该数据结构的特点;

3.语句构造

在编码过程中,最主要的工作就是书写语句。有关书写语句的原则有几十种,总起来说都是希望每条语句尽可能简单明了 ,能直截了当地反映程序员的意图。下面列出一些常用的规则:
·不要在同一行中写多个语句;
·避免使用测试条件"非";
·避免使用复杂的条件测试;
·使用括号清晰地表达出逻辑表达式和算术表达式的运算次序;
·利用添加空格来清晰地表示语句的成分;
·尽量不用或少用GOTO语句;
·尽量不用或少用标准文本以外的语句,以利于提高可移植性;
·尽量只采用三种基本控制结构来编写程序;

4.输入和输出

输入和输出是每个程序都不可缺少的部分。在编写输入和输出程序段时可考虑下列原则:
·对所有的输入数据都进行检验,以确保输入数据的有效性;
·检查输入项的重要组合的合理性,如金额等于单价乘以数量;
·保持输入格式的简单和操作的简单;
·使用数据结束标记(如数据文件结束标记),而不应要求用户指定输入数据的个数;
·明确提示交互式输入的请求,详细说明可用的选择或边界值;
·当程序设计语言对输入格式有严格要求时,应保持输入格式与输入语句要求的一致;
·设计良好的输出报表;

摘自:《程序员教程》王春森主编 清华大学出版社 P169-P171

评论: 0 | 引用: 0 | 查看次数: 2982
发表评论
登录后再发表评论!