北京市新中新银通公司研发部
Delphi 5 软件开发代码风格
Delphi 5 软件开发代码风格
2001 年 8 月 8 日 公司开发的软件应当容易维护,容易升级,容易移植,因此必须保证不同开发人员所写的程序具有相同的代码风格。 本文件规定了使用 Delphi 5 开发工具所写代码的标准风格,凡公司开发的软件,必须按此规定编写。 目录安排 1. 2. 建立 D:\My Components 目录,用于放置各种第三方控件,该目录内容由
系统管理员确定。 建立 D:\Works 和 D:\Temp 目录,其 D:\Works 下建立各工程目录,各工程生成的可执行文件输出到相应工程目录 下,编译过程生成的临时模块文件如 *.dcu 和 *.obj 等输出到 D:\Temp 目录下。各工程目录下设置以下几个子 目录。如需增加其他子目录,可根据软件实际情况参照上述方式自行定义,必须保证目录含义清楚,并且便于备 份管理。 目录名称 Source Doc Resource DB Backup 环境设置 1. 各开发人员必须安装 Source Formatter 专家,用来对程序源码进行格式化。配置方法如下 a) 运行 Delphi 5,按 Ctrl + D 打开 Source Formatter,在 Options 对话框中选择 Line breaks 页面,设置 Begin style 为 Hanging begin。 b) 在 Options 对话框中选择 Indent 页面,选中 Indent Comments。 c) 在 Options 对话框中选择 Line breaks 页面,选中 Warp Long Lines 并设置 At position 为 101。 d) 在 Options 对话框中选择 Align 页面,选中 Align simple comments after code 并设置 At position 为 80 e) 在 Options 对话框中选择 Align 页面,选中 Align var/const statements 并设置 At position 为 25 2. 3. 4. 各开发人员必须安装 RxLib 控件组。 各开发人员必须安装 Morrowsoft 控件组。 推荐开发人员安装 GExperts 专家。安装完毕后在 Gexperts Configuration 中选择 Palette 页面,选中 Add component tab names to popup menu。 工程设置 根据
工作目录安排,各工程的选项设置推荐按以下要求配置。工程文件的配置由项目负责人进行,其他开发成员未经 项目负责人同意,不得随意改变。 1. 在 Project Options 对话框中选择 Directory/Conditionals 页面,设置 Output directory = “..\” Unit output directory = “D:\Temp” Search Path = “D:\My Components\Translate5” 2. 在 Project Options 对话框中选择 Version Info 页面,设置 CompanyName = “北京新中新银通公司” FileDescription = 软件描述 FileVersion = 可执行文件版本号 InternalName = 软件内部开发代号 LegalCopyright = “
版权所有(C) 1997-2001 北京新中新银通公司” 目录用途 放置所有源程序文件 放置软件说明
文档 放置软件用到的所有资源文件,如位图、图标等 放置
软件所必需的数据或数据库文件 放置源
程序备份文件
-1-
北京市新中新银通公司研发部 LegalTrademarks = 软件商标 Original
Filename = 软件原始可执行文件名称 ProductName = 软件全称 ProductVersion = 软件版本号 代码风格 1. 2. 3. 4. 5. 6. 7. 8. 9.
Delphi 5 软件开发代码风格
在 Editor Options 对话框中选择 General 页面,去除 Smart Tab 选项,设置 Tab Stops = 2,不要选中 Set Tab Character 和 Optimal Fill 复选框。 过长的语句在 100 列处进行换行,换行后应缩进两个字符。 左括号与下一个字符之间无空格,右括号与前一字符之间也无空格。不要在语句中包含多余的空格。 保留字与关键字全部小写。 函数或过程名称应以大写字母开始,且大小写交错以增加可读性。 参数名称最好以字母 A 为前缀;不用更改的参数最好加上 const 进行限定。 最好用 Double 代替 Real 类型;类型定义部分用 T 作为前缀;指针类型定义部分用 P 作为前缀。 在 if/then/else 语句中,最有可能执行的情况放在 then 子句中;按复杂度将测试条件由左向右排列,以充分利 用编译器的短路估算逻辑。 最好不用 Exit 退出循环,而使用循环条件退出;如果循环次数是固定的,