1、通过建立代码编写规范,形成开发小组的编码约定,可以提高程序的可靠性、可读性、可修改性、可维约定,可以提高程序的可靠性、可读性、可修改性、可维护性、可继承性和一致性,可以保证程序代码的质量,继护性、可继承性和一致性,可以保证程序代码的质量,继承软件开发成果,充分利用资源,使开发人员之间的工作承软件开发成果,充分利用资源,使开发人员之间的工作成果可以共享。成果可以共享。为了编写出可读性好、易测试、易维护且可靠性高的程序,为了编写出可读性好、易测试、易维护且可靠性高的程序,软件开发人员必须重视编码的风格。编码风格主要体现在软件开发人员必须重视编码的风格。编码风格主要体现在以下以下4 4个方面:源程序
2、文档化,数据说明的方法,表达式个方面:源程序文档化,数据说明的方法,表达式和语句结构、输入和语句结构、输入/输出方法。力图从编码原则的角度提输出方法。力图从编码原则的角度提高程序的可读性,改善程序质量。高程序的可读性,改善程序质量。6.1 6.1 建立编码风格建立编码风格1.1.源程序文档化源程序文档化(1 1)标识符的命名应反映它所代表的实际东西,应有一定实)标识符的命名应反映它所代表的实际东西,应有一定实际意义际意义。如:平均值用如:平均值用AverageAverage表示,和用表示,和用SumSum表示,总量用表示,总量用TotalTotal表示。表示。名字不是越长越好,过长的名字会使程
3、序的逻辑流程变得模名字不是越长越好,过长的名字会使程序的逻辑流程变得模糊,给修改带来困难。所以应当选择精炼的意义明确的名字,糊,给修改带来困难。所以应当选择精炼的意义明确的名字,改善对程序功能的理解,必要时可使用缩写名字,但缩写规改善对程序功能的理解,必要时可使用缩写名字,但缩写规则要一致,并且要给每一个名字加注释。在一个程序中,一则要一致,并且要给每一个名字加注释。在一个程序中,一个变量只应用于一种用途,也就是说,在同一个程序中一个个变量只应用于一种用途,也就是说,在同一个程序中一个变量不能身兼几种工作。变量不能身兼几种工作。(2 2)程序中的注释是程序员与日后的程序读者之间通信的重)程序中
4、的注释是程序员与日后的程序读者之间通信的重要手段要手段。正确的注释能够帮助读者理解程序,可为后续阶段进行测试正确的注释能够帮助读者理解程序,可为后续阶段进行测试和维护提供明确的指导。因此,注释决不是可有可无的,大和维护提供明确的指导。因此,注释决不是可有可无的,大多数程序设计语言允许使用自然语言来写注释,这就给阅读多数程序设计语言允许使用自然语言来写注释,这就给阅读程序带来很大的方便。注释主要有两种:序言性注释和功能程序带来很大的方便。序言性注释和功能性注释。性注释。6.1 6.1 建立编码风格建立编码风格序言性注释通常置于每个程序模块的开头部分,它应当给出程序的整体说明,对于理解程序本身具有
5、引导作用。有些软件开发部门对序言性注释作了明确而严格的规定,要求程序编制者逐项列出。有关项目包括:l程序标题;l有关本模块功能和目的的说明;l主要算法;l接口说明:包括调用形式,参数描述,子程序清单;l有关数据描述:重要的变量及其用途,约束或限制条件,以及其它有关信息;l模块位置:在哪一个源文件中,或隶属于哪一个软件包。下面是一个程序的序言性注释的实例(参见源程序FrmLend.vb)。6.1 6.1 建立编码风格建立编码风格 文件名:文件名:FrmLend.vbCopyright 2009 沈阳师范大学图书馆沈阳师范大学图书馆创建人:胡万德创建人:胡万德日期:日期:2009年年1月月15日日
6、描述:借阅图书模块描述:借阅图书模块 功能性注释嵌在源程序体中,用以描述其后的语句或程序段是在功能性注释嵌在源程序体中,用以描述其后的语句或程序段是在做什么工作。书写功能性注释要注意以下几点:用于描述一段程做什么工作。用于描述一段程序,而不是每一个语句;用缩进和空行,使程序与注释容易区别;序,而不是每一个语句;注释要正确。有合适的,有助于记忆的标识符和恰当的注释,就注释要正确。有合适的,有助于记忆的标识符和恰当的注释,就能得到比较好的源程序内部的文档。有关设计的说明,也可作为能得到比较好的源程序内部的文档。有关设计的说明,也可作为注释,嵌入源程序体内。下面是一个程序的功能性注释的实例注释,嵌入
7、源程序体内。下面是一个程序的功能性注释的实例(参见源程序(参见源程序FrmLend.vbFrmLend.vb)。)。6.1 6.1 建立编码风格建立编码风格(3 3)程序的视觉组织。程序的视觉组织。利用空格、空行和移行,提高程序的可视化程度。恰当地利用空格,可以突出运算的优先性,避免发恰当地利用空格,可以突出运算的优先性,避免发生运算的错误。自然的程序段之间可用空行隔开,生运算的错误。自然的程序段之间可用空行隔开,对于选择语句和循环语句,把其中的程序段语句向对于选择语句和循环语句,把其中的程序段语句向右做阶梯式移行,这样可使程序的逻辑结构更加清右做阶梯式移行,这样可使程序的逻辑结构更加清晰,层
8、次更加分明。其中缩排是一种最常用、最有晰,层次更加分明。其中缩排是一种最常用、最有效的技术,用以通过版式展现程序的逻辑。正如下效的技术,用以通过版式展现程序的逻辑。正如下面实例所证明的,缩排的程序要比未缩排的程序更面实例所证明的,缩排的程序要比未缩排的程序更易于阅读,尽管过度缩排可能会不及未缩排的程序易于阅读,尽管过度缩排可能会不及未缩排的程序易读性好。下面是一个未缩排的易读性好。下面是一个未缩排的IFIF语句实例(参见语句实例(参见源文件源文件ClsOperate.vbClsOperate.vb):):6.1 6.1 建立编码风格建立编码风格2.2.数据说明数据说明 在详细设计阶段就已经确定
9、了系统所涉及的数据结构的组织和复杂在详细设计阶段就已经确定了系统所涉及的数据结构的组织和复杂程度,但对数据进行说明却是在编码时进行的。为了使数据说明程度,但对数据进行说明却是在编码时进行的。为了使数据说明便于理解和维护,必须注意下述几点:便于理解和维护,必须注意下述几点:(1 1)数据说明的次序应规范。)数据说明的次序应规范。为方便阅读、理解和维护,数据说明的次序应规范化,使说明的为方便阅读、理解和维护,数据说明的次序应规范化,使说明的先后次序固定,使数据属性容易查找。例如,按常量说明、简单先后次序固定,使数据属性容易查找。例如,按常量说明、简单变量类型说明、数组说明、公用数据块说明、所有的文
10、件说明的变量类型说明、数组说明、公用数据块说明、所有的文件说明的顺序说明。在类型说明中还可进一步要求,例如可按整型量说明、顺序说明。在类型说明中还可进一步要求,例如可按整型量说明、实型量说明、字符量说明、逻辑量说明顺序排列。实型量说明、字符量说明、逻辑量说明顺序排列。(2 2)当用一个语句说明多个变量名时,应当对这些变量按字母的)当用一个语句说明多个变量名时,应当对这些变量按字母的顺序排列。顺序排列。在下面的实例中我们定义了在下面的实例中我们定义了A1A1、A2A2、A3A3等等8 8个变量个变量(参见源文件(参见源文件FrmRet.vbFrmRet.vb)。(3)如果设计了一个复杂的数据结构
11、,应当使用注释来说明在如果设计了一个复杂的数据结构,应当使用注释来说明在 程序实现时这个数据结构的特点。程序实现时这个数据结构的特点。6.1 6.1 建立编码风格建立编码风格3.3.达式和语句结构达式和语句结构在设计阶段确定了软件的逻辑结构,但构在设计阶段确定了软件的逻辑结构,但构造单个语句则是编码阶段的任务。构造语造单个语句则是编码阶段的任务。构造语句时应该遵循简单而直接的原则,不能为句时应该遵循简单而直接的原则,不能为了提高效率而使表达式或语句变得过分复了提高效率而使表达式或语句变得过分复杂。下述规则有助于使语句简单明了。杂。6.1 6.1 建立编码风格建立编码风格4 4输入和输出输入和输
12、出(I/O)(I/O)输入和输出信息是与用户的使用直接相关的,输入和输出的输入和输出信息是与用户的使用直接相关的,输入和输出的方式和格式应当尽可能方便用户的使用。因此,在软件需求方式和格式应当尽可能方便用户的使用。因此,在软件需求分析阶段和设计阶段,就应基本确定输入和输出的风格。系分析阶段和设计阶段,就应基本确定输入和输出的风格。系统能否被用户接受,有时就取决于输入和输出的风格。统能否被用户接受,有时就取决于输入和输出的风格。在设计和程序编码时都应考虑下列原则:(1)(1)对所有的输入数据都进行检验,从而识别错误的输入,对所有的输入数据都进行检验,从而识别错误的输入,以保证每个数据的有效性;以
13、保证每个数据的有效性;(2)(2)检查输入项的各种重要组合的合理性,必要时报告输入检查输入项的各种重要组合的合理性,必要时报告输入状态信息;状态信息;(3)(3)使得输入的步骤和操作尽可能简单,并保持简单的输入使得输入的步骤和操作尽可能简单,并保持简单的输入格式;格式;(4)(4)输入一批数据时,最好使用输入结束标志,而不要由用输入一批数据时,最好使用输入结束标志,而不要由用户指定输入数据数目;户指定输入数据数目;(5)(5)当程序设计语言对输入输出格式有严格要求时,应保当程序设计语言对输入输出格式有严格要求时,应保持输入格式与输入语句的要求的一致性;持输入格式与输入语句的要求的一致性;6.1
14、 6.1 建立编码风格建立编码风格(6)(6)给所有的输出加注解,并设计输出报表格式;给所有的输出加注解,并设计输出报表格式;(7)(7)有完备的输入出错检查和出错恢复措施,在程序执行过有完备的输入出错检查和出错恢复措施,在程序执行过程中尽量排除由于用户的原因而造成程序出错的可能性;程中尽量排除由于用户的原因而造成程序出错的可能性;(8)(8)如果用户的请求有了结果,应随时通知用户;如果用户的请求有了结果,应随时通知用户;(9)(9)充分利用联机帮助手段,对于不熟练的用户,提供对话充分利用联机帮助手段,对于不熟练的用户,提供对话式服务,对于熟练的用户,提供较高级的系统服务,改善式服务,对于熟练的用户,提供较高级的系统服务,改善输入输出的能力;输入输出的能力;(10)(10)使输入格式和操作要求与用户的技术水平相适应。对使输入格式和操作要求与用户的技术水平相适应。对于不熟练的用户,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1