预览加载中,请您耐心等待几秒...
1/1

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Delphi编码规范Checklist文件编码:项目名称:检查日期:项目编号:检查人:项目负责人:确认人:检查大项检查子项完成情况通用源代码格式规则缩进是否两个两个空格表示在源代码中不能用制表符表示缩进在EnvironmentOptions对话框的General页上不要选中UseTabCharacter和OptionalFill复选框边距边距是否设置为80个字符长度超过一行的语句应当用逗号或运算符换行换行后应缩进两个字符begin...end“begin”和“end”语句必须单独占一行括号在左括号与下一字符之间没有空格右括号与前一字符也没有空格语句中是否包含多余的括号保留字和关键字保留字和关键字是否完全小写过程和函数过程名是否以大写字母开始且大小写交错以增加可读性形参同一类型的形参是否归并在一起是否遵循:形参的顺序主要要考虑寄存器调用规则。最常用的参数应当作为第一个参数按使用频率依次从左到右排。输入参数位于输出参数之前。范围大的参数应当放在范围小的参数之前常量参数记录、数组、短字符串、接口类型等不能被过程修改的参数形参是否标以Const变量局部变量是否在过程的入口处初始化变量全局变量不需要初始化为诸如0、nil、或Unassigned等空值是否遵循变量命名规范类型保留字类型是否全部小写Win32API类型是否全部大写对于其他变量名第一个字母应大写其他字母则大小写交错浮点数应当使用Double类型语句在if/then/else语句中最有可能执行的情况应放在then子句中不太可能的情况放在else子句中如果多于5级不要使用if语句不要在if语句中使用多余的括号如果在if语句中有多个条件要测试应按照计算的复杂程度从右向左排case语句中每种情况的常量应当按数字或字母的顺序排列每种情况的动作语句应当简短且通常不超过4-5行代码。如果动作太复杂应将代码单独放在一个过程或函数中Case语句的else子句只用于默认情况或错误检测case语句是否遵循一般的缩进和命名规则建议不要使用Exit过程来退出while循环。如果需要的话应当使用循环条件退出循环所有对while循环进行初始化的代码应当位于while入口前且不要被无关的语句隔开任何业务的辅助工作都应在循环后立即进行如果循环次数是确定的应当用for语句代替while语句repeat语句类似于while循环且遵循同样的规则避免在with语句中使用多个对象或记录结构化异常处理单元的初始/结束部分或者对象的构造器/析构器中来分配/释放资源外其它分配资源的地方都必须使用try...finally来保证资源得到释放每个资源分配应当与try...finally结构匹配命名规范过程与函数名应当有意义。进行一个动作的过程在名称前加上表示动作的动词为前缀所有形参的名称都应当表达出它的用途。名称是否以字母a为前缀当两个单元中含有相同名称的过程时如果调用该过程实际被调用的是Uses子句中较后出现的那个单元中的过程。为避免这种情况可在方法名前加想要的单元名变量的名称应当能够表达出它的用途全局变量以大写字母“G”打头枚举类型名必须代表枚举的用途。名称前要加T字符作为前缀表示这是个数据类型数组类型名应表达出该数组的用途。类型名必须加字母“T”为前缀如果要声明一个指向数组类型的指针则必须加字母P为前缀且声明在类型声明之前记录类型名应表达出记录的用途。类型名必须加字母T为前缀。如果要声明一个指向记录类型的指计则必须加字母P为前缀且其声明在类型声明之前类的名称应当表达出类的用途类名前要加字母“T”如果是接口类那么类名前要加“I”错误异常类的类名前要加“E”而类引用类型(Class-referencetype)则要在类名后加“Class”字段的命名遵循与变量相同的规则只不过要加前缀F不希望一个方法被派生类覆盖时应当使用静态方法当你希望一个方法能被派生类覆盖应当使用虚拟方法(virtual)。如果类的方法要被多个派生类直接或间接地使用则应当用动态方法(dynamic)要创建实例的类不要使用抽象方法所有属性访问方法应当定义在类的私有或保护部分用于读的方法应当加“Get”前缀用于写的方法应当加“Set”前缀并且有一个叫Value的参数其类型与属性的类型相同属性访问方法遵循与过程和函数相同的规则属性作为私有字段的访问器遵循与字段相同的命名规则只不过没有F前缀属性名应为名词而不是动词元件的命名与类的命名类似只不过当它与其它元件名称冲突时你可以加上3个字符的前缀用以标识公司、个人或其他实体元件性质标识名是元件意图的描述窗体或对话框类型的名称应当表达出窗体的用途窗体实例的名称与相应的类型名称相同但没有前缀T除非特别原因只有主窗体才自动生成。其他所有窗体必须从ProjectOptions对话框的自动生成列表