RELATEED CONSULTING
相关咨询
选择相应客服马上在线沟通
客服电话:0531-88989050
服务时间:8:30-18:00
关闭右侧工具栏
软件编码设计过程性规范
  • 作者:大左软件
  • 发表时间:2015-07-21
  • 更新时间:2020-06-11
  • 新闻资讯

1.1.编写目的:

使用统一编码约定集的主要原因,是使应用程序的结构和编码风格标准化,以便于阅读和理解这段编码。好的编码约定可使源代码严谨、可读性强且意义清楚,与其它语言约定相一致,并且尽可能的直观。
一组通用目的的编码约定应该定义完成上述目的所必需的、能让程序员自由地创建程序逻辑和功能流程的最小的要求。编码约定的目的是使程序易于阅读和理解,而不是用过份的约束和绝对的限制来束缚程序员本身的创造性。

1.2内容:

程序设计语言的特性和风格会直接影响到软件的质量和可维护性。
编码原则:
应尽量避免在系统初始化时运行过多的代码。(此处加入详细原则)
 

  1. 选用控制结构只准许一个入口和一个出口。

  2. 程序语句组成容易识别的块,每块只有一个入口和一个出口。

  3. 复杂的结构应该用基本控制结构进行组合嵌套来实现。

  4. 语句中没有的控制结构,可用一段等价的程序段模拟,但要求该程序段在整个系统应前后一致。

  5. 严格控制GOTO语句,仅在下列情形才可使用。

  1. 用一个非结构化的程序设计语言去实现一个结构化的构造。

  2. 在某种可以改善而不是损害程序可读性的情况下。 
     

1.2.1对象命名约定

公式:对象名称=对象前缀+自定义名称(自定义名称要有一定的意义且第一个字母大写)
说明:如果是不需要对其编码的对象,那么对象名用默认对象名。
应该用一致的前缀来命名对象,使人们容易识别对象的类型。下面列出了 Delphi 支持的一些推荐使用的对象约定。

  1. 推荐使用的项目前缀

  
(2)推荐使用的控件前缀
 
(3)推荐使用的数据访问对象的前缀
用下列前缀来指示数据访问对象。
 
(4)推荐使用的菜单前缀
应用程序频繁使用许多菜单控件,对于这些控件具备一组唯一的命名约定很实用。除了最前面 "mnu" 标记以外,菜单控件的前缀应该被扩展:对每一级嵌套增加一个附加前缀,将最终的菜单的标题放在名称字符串的最后。下表列出了一些例子。
 
菜单标题序列菜单处理器名称
(此处加入标题序列及处理器名称
 
 
当使用这种命名约定时,一个特定的菜单组的所有成员一个接一个地列在 Visual Basic 的“属性”窗口中。而且,菜单控件的名字清楚地表示出它们所属的菜单项。
 
(5)为其它控件选择前缀
对于上面没有列出的控件,应该用唯一的由两个或三个字符组成的前缀使它们标准化,以保持一致性。只有当需要澄清时,才使用多于三个字符的前缀。
 
例如,(此处加入例子
 
 

1.2.2常量和变量命名约定

公式:常量或变量名称=常量或变量范围前缀+常量或变量类型前缀+自定义名称(自定义名称要有一定的意义且第一个字母大写)
 
除了对象之外,常量和变量也需要良好格式的命名约定。本节列出了(此处加入变量列表
变量应该总是被定义在尽可能小的范围内。全局 (Public) 变量可以导致极其复杂的状态机构,并且使一个应用程序的逻辑非常难于理解。全局变量也使代码的重用和维护更加困难。
Delphi中的变量可以有下列范围:
范围声明位置 可见位置
过程级(此处加入名称
模块级(此处加入名称
全局(此处加入名称
较好的编码习惯是尽可能写模块化的代码。例如,如果应用程序显示一个对话框,就把要完成这一对话任务所需要的所有控件和代码放在单一的窗体中。这有助于将应用程序的代码组织在有用的组件中,并减小它运行时的开销。
 
除了全局变量(应该是不被传递的),过程和函数应该仅对传递给它们的对象操作。在过程中使用的全局变量应该在过程起始处的声明部分中标识出来。
变量范围前缀
随着工程大小的增长,划分变量范围的工作也迅速增加。在类型前缀的前面放置单字母范围前缀标明了这种增长,但变量名的长度并没有增加很多。
 

范围前缀例子
全局gGstrUserName
模块级mMblnCalcInProgress
本地到过程DblVelocity

 
(此处加入说明
 
变量
声明所有的变量将会(此处加入说明
应该给变量加前缀来指明它们的数据类型。而且前缀可以被扩展,用来指明变量范围,特别是对大型程序。
 
变量数据类型
用下列前缀来指明一个变量的数据类型。
(此处加入说明
描述变量和过程名
变量或过程名的主体应该使用大小写混合形式,并且应该足够长以描述它的作用。而且,函数名(此处加入函数名称
对于频繁使用的或长的项,推荐使用标准缩略语以使名称的长度合理化。一般来说,(此处加入特例说明就困难了。
当使用缩略语时,要确保它们在整个应用程序中的一致性。在一个工程中,如果一会儿使用(此处加入说明问题,将导致不必要的混淆。
 
用户定义的类型
在一项有许多用户定义类型的大工程中,常常有必要给每种类型一个它自己的三个字符的前缀。如果这些前缀是(此处加入前缀名称

1.2.3结构化编码约定

(此处加入约定说明
 
记住下列几点:
每一个重要变量的声明应该包括(此处加入变量名称
(2)格式化代码
因为许多程序员(此处加入问题
 
(此处加入解决问题的说明
(3)给常量分组
变量和定义的常量应该按功能分组,而不是分散到单独区域或特定文件中。
(4)运算符
(此处加入运算符列表及说明
(5)为(此处加入问题 查询创建字符串
(此处加入说明

1.2.4数据源的约定

(此处加入数据源的约定

1.2.5数据库访问约定

访问数据库用ODBC drivers/ADO,但如果在有的技术ADO解决不了的情况下可用其他方法。
数据库访问技术有:(此处加入说明

1.2.6其他约定

(1)当日期、时间型数据要求严格时,(此处加入说明
   (2)记录集应用约束