程序员培训Delphi编码规范Word格式.docx

上传人:b****1 文档编号:14630536 上传时间:2022-10-23 格式:DOCX 页数:13 大小:21.24KB
下载 相关 举报
程序员培训Delphi编码规范Word格式.docx_第1页
第1页 / 共13页
程序员培训Delphi编码规范Word格式.docx_第2页
第2页 / 共13页
程序员培训Delphi编码规范Word格式.docx_第3页
第3页 / 共13页
程序员培训Delphi编码规范Word格式.docx_第4页
第4页 / 共13页
程序员培训Delphi编码规范Word格式.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

程序员培训Delphi编码规范Word格式.docx

《程序员培训Delphi编码规范Word格式.docx》由会员分享,可在线阅读,更多相关《程序员培训Delphi编码规范Word格式.docx(13页珍藏版)》请在冰豆网上搜索。

程序员培训Delphi编码规范Word格式.docx

3.4.3.变量7

3.4.4.常量8

3.4.5.类8

3.4.6.控件8

3.5.修改规范11

3.5.1.新增代码行11

3.5.2.删除代码行11

3.5.3.修改代码行11

1.目的

统一规范DELPHI的编码风格和标准。

2.适用范围

适用于所有用DELPHI语言开发的项目。

3.编码范规

注:

标有‘’的条目为强制检查项。

3.1.文件

1)项目文件必须使用一个有意义的名字并且以Prj打头。

例如:

Delphi中系统的项目文件被命名为’PrjSysInfo.dpr’。

2)unit文件使用‘Unit’作为前缀。

通常的unit被命名为’UnitGeneral’。

3)Formunit文件的名字必须和Form的名称保持一致。

主窗体叫frmMain则FormUnit文件的名字为’UnitfrmMain’。

4)DataModuleunit文件的名字必须和DataModule的名称保持一致。

主DataModule叫’DMMain’,则DataModuleUnit文件的名字为’UnitDMMain’。

5)公共单元统一命名为’UnitPublic.pas’。

6)对于文件的目录要按如下结构来创建:

-SQL(脚本文件目录)

-DOC(文档目录)

-Hlp(帮助文件目录)

-SRC(源码文件目录)

-PROJECT(项目工程文件目录)

-BIN(EXE输出目录)

-DCU(DCU输出目录)

3.2.注释

1)注释可以采用’{}’和’//’两种注释符号,但是涉及到多行注释时尽量使用’{}’。

2)对于一行代码的注释可放在前一行及本行上,不允许放在下一行,更不允许在一行语句的中间加入注释。

3)单元文件的文件头注释说明应按如下格式:

{******************************************************************}

{}

{Copyright(c)2008-2011福建星网视易信息系统有限公司}

unitUnitfrmCustomer;

{*=================================================================

*系统名称:

精通管理系统

*单元名称:

会员信息维护

*单元作者:

xxxx

*功能描述:

主要是进行会员信息的增加修改和删除以会员信息的写卡和刷卡操作。

*修改记录:

*李明2010-07-01创建该单元仅记录功能修改,bug修改不记录

*张山2011-08-02会员查询增加按会员卡号查询的条件

}

4)不必每行都加注释,在3~10行左右的段落做注释要好于每行都做注释,显而易见的代码不加注释。

if(ErrorCode<

>

0)then//执行过程失败无用的注释

begin

ShowMessage(‘保存员工信息失败!

’);

end;

3.3.编码排版格式

1)代码的缩进应使用空格(SPACE),不能使用制表符(TAB),并且缩进以2字符为单位。

2)begin语句和end语句在源程序中要独占一行。

例如:

//不正确的用法

fori:

=0to10dobegin

//正确的用法

=0to10do

3)空格的使用:

a)关键字与其后的表达式之间要有空格,如:

if(expr)

while(expr)

b)单目操作符不应与它们的操作数分开(如’@’和’^’)。

c)除’.’外,其它双目操作符应与它们的操作数用空格隔开。

i:

=i+1;

//错误的写法,操作符两端没有空格

i:

=i+1;

//正确的写法

if(a>

b)then//错误的用法,逻辑判断符号两端没有空格

if(a>

b)then//正确的用法

4)每行只能有一个语句。

//不正确写法

a:

=a+1;

sum:

=sum+a;

//正确写法:

sum:

5)一个过程或函数结束后,后续语句要隔一空行。

procedureGetMax():

Integer

result:

=MaxValue;

<

一个过程或函数结束后,后续语句要隔一空行

procedureGetMin():

=MinValue;

6)每行的代码不允许超出一个屏幕的宽度。

3.4.命名规范

3.4.1.保留字

ObjectPascal语言的保留字或关键词应全部使用小写字母,除下表中保留字外,private、protected、public、published和automated在对象类型说明中也作为保留字使用,at和on也有特殊意义。

and

array

as

asm

case

class

const

constructor

destructor

dispinterface

div

Do

downto

else

end

except

exports

file

finalization

finally

for

function

goto

if

implementation

in

inherited

initialization

inline

interface

is

label

library

mod

nil

not

object

of

or

out

packed

procedure

program

property

raise

record

repeat

resourcestring

set

shl

shr

string

then

threadvar

to

try

type

unit

until

uses

var

while

with

xor

3.4.2.过程和函数

1)程和函数的名称应全部使用有意义的单词组成,并且所有单词的第一个字母应该使用大写字母。

procedureformatharddisk;

//不正确的命名

procedureFormatHardDisk;

//正确的命名

2)类变量内容的过程和函数应使用Set作为前缀,读取变量内容的过程和函数应使用Get作为前缀。

procedureSetUserName;

functionGetUserName:

string;

3)同一类型的参数写在同一句中,例如:

procedureFoot(Param1,Param2,Param3:

integer;

Param4:

string);

所有参数必须是有意义的;

并且当参数名称和其它属性名称重了的时候,加一个前缀’A’。

procedureSomeProc(AUserName:

AUserAge:

integer);

3.4.3.变量

1)变量必须起有意义的名字,使其它组员可以很容易读懂变量所代表的意义,变量命名可以采用同义的英文命名,可使用几个英文单词,但每一单词的首字母必须大写。

Var

WriteFormat:

string;

2)同时对于一些特定类型可采用一定的简写如下:

指针类型P

纪录类型Rec

数组类型Arr

循环控制变量通常使用单一的字符如:

i,j,或k。

另外使用一个有意义的名字例如:

UserIndex,也是准许的。

3)尽量不使用全局变量,如必须使用全局变量则必须加前缀’Pub_’,同时应在变量名称中体现变量的类型。

Pub_PrecUserCount:

point;

//名称为UserCount的全局变量,其类型为指向一结构的指针

4)Form类和DataModulesForms类的实例化变量命名应与其去掉‘T’的名字相一致。

frmAbout:

TfrmAbout;

类TfrmAbout的实例化变量为frmAbout

DMCustomer:

TDMCustomer;

类TDMCustomer的实例化变量为DMCustomer

3.4.4.常量

1)避免在程序中直接出现常数,使用超过一次的常数应以宏定义或变量的常数形式来进行替代。

2)常数的宏定义应与它实际使用时的类型相一致。

如以2.0来定义浮点类型,用2表示整型。

3)常量的命名应当能够表达出它的用途,并且要求用大写字母表示。

constPI=3.1415926;

constTIMEOUT=100;

3.4.5.类

1)类的名字必须有意义并且类型的名字之前要加前缀‘T’。

TCustomer=class(TObject)

2)类中定义的变量名字必须有意义并且在名字之前要加前缀’F’,所有的变量必须是私有的。

如果需要从外部访问此变量则需要声明其属性。

3)属性的名称要同其用于操作的去前缀’F’的类变量名称相一致。

4)所有的属性访问方法必须出现在private或protected中。

属性访问方法的命名同函数和过程的命名另外读方法(readermethod)必须使用前缀’Get’.写方法(writermethod)必须使用前缀’Set’。

写方法的参数必须命名为’Value’,其类型同所要写的属性相一致。

TSomeClass=class(TObject)

private

FSomeField:

Integer;

FSomeField去”F”后跟SomeField相一致

protected

functionGetSomeField:

procedureSetSomeField(Value:

Integer);

public

propertySomeField:

IntegerreadGetSomeFieldwriteSetSomeField;

5)Form类命名使用‘Tfrm’作为前缀。

TfrmAbout=class(TForm)

TfrmMain=class(TForm)

6)DataModules

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 化学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1