教程中国
PHOTOSHOP CS9.0中文版 MAYA 8.5 FOR WINDOWS Corel Painter v9.0 Flash MX2004 中文版 Illustrator cs2 中文版
VC++6.0含sp6 中英文版 VB6.0 +sp6 简体中文版 Borland Delphi 7汉化版 MSDN for vb6.0中文版 Visual Studio 2005简体
教程中国下属 文件存储共享专家BIBIDU.COM 提供大型软件,教材,源码,电影,音乐,图书等下载 更多精品请点此进入
  您目前所在位置: 教程中国 >> 编程基地 >> Delphi >> Delphi编码规范 RSS订阅
Delphi编码规范
Delphi编码规范(2)
教程(视频,书籍)下载:  ASP.NET AutoCAD 数据库 C# ASP java photoshop 网页设计 delphi 3dmax Flash C++ VB 张孝祥 实例   更多请进入BIBIDU搜索
IT搜索引擎   
e: integer): integer;                       //错误
 
1.4   大小写
所有的自定义名称中的每个单词的首字母要使用大写,其它字母使用小写。Delphi保留字和关键字要全部使用小写。Delphi预定义函数的写法与自定义名称写法相同。Delphi中的基本数据类型要使用小写,扩展的类类型要的前两个字母要大写(类类型的首字母是“T”)。下面是一些例子:
1.  自定义名称:MyFavouriteSong, CarList;
2.  保留字:if (a = b) and ((a = c) or (a = d)) then … end;
3.  Delphi预定义函数:ShowMessage('Everything all right');
4.  Delphi扩展类类型:MyStrings = TStrings.Create;
 
1.5   注释
Delphi支持两种注释:块注释({})和单行注释(//)。注释的作用是为了解释程序的设计思路,帮助程序员尽快明白两年前甚至昨天写的程序的思路。这实际上是为了解决记忆问题,大脑不该被过分作为存储器使用,在程序设计中永远不要过分依赖大脑,而要尽可能借助文字。所以说,注释在程序设计语言中是十分重要的方面,尽管很多人(尤其是初学者,也包括相当数量的程序员)对此毫不介意,他们很少写注释。注释的另外一个应用是在程序调试阶段,比如说有两个语句,事先并不知道哪一个更好,于是需要测试:将一条语句前放置"//"(也就是说将这条语句改为注释),运行另一条语句,然后再做相反的工作,我们就可以轻松做出选择。如果是一组语句,那就用块注释,但一定注意要将"{"和"}"放在显眼的位置,比如说放在单独的上下两行。下面是一些使用原则:
1. 多数情况下,在自定义变量、类型的前面放置注释是有必要的。
2. 多数情况下,在单元文件顶部放置注释是必要的。在此,注释中要包含:文件名、创建日期、修改日期、作者、修改作者以及必要的描述。
3. 注释要有意义,不要使用没用的注释。比如:
while i < 8 do
begin
  …
  i:= i + 1;   //Add one to i
end;
注释“//Add one to i”在此是毫无意义的,当然并不是说简单的语句(类似于:i : = i + 1)就不需要注释。因为简单的语句往往会起到十分重要的作用,所以,如果这条语句会使人产生疑问或者让人难以理解,那么就要将此语句的作用标记下来。
4. 不要试图在注释中创建组合图案,除非你认为这十分必要。因为在保持图案完整美观的情况下修改注释是非常困难的。。
5. 要区分临时注释和永久注释,你可以用你的方法在注释中放置特殊符号来区分。这样的好处是易于查找。
6. 对语句的更改要映射到相应的注释中。
7. 注释与代码间要留有明显的间隔,要一眼就能够分清楚哪是语句哪是注释。可以将注释放在代码行的前一行、后一行或留有至少两个空格紧跟在代码的后面,但是在代码与注释在同一行时不要使代码跟在注释的后面,另外,不要将在注释放在代码中间。
 
2. 语句
2.1   begin…end语句
begin和end语句要独占一行,begin要与上一层的第一个字母对齐,也就是说在换行之后不要留任何空格而直接写begin,end要与所对应的begin对齐。本规则可以用在任何地方。下面是正确的写法:
for i:= 1 to 10 do
begin
  …
end;
但在if语句中有个特例,如下:
if Condition then
begin
  …
end
else begin
  …
end;
这样写的原则是要保证程序足够紧凑。语句分层的好处是使我们面对一个清晰的程序段,但是过分的、不尽合理的分层会使程序过于松散,这同样是需要避免的。
 
2.2   if语句
将最有可能执行的情况放在then语句中,不太可能的情况放在else子句中。这样对维护来说不会带来多少帮助,但会使程序效率更高。
多级if语句的可读性不强,所以应经尽能避免出现多级if语句。当多于5级时,就该考虑使用case语句代替if语句。
不要在if语句中使用不必要的括号。在源代码中,括号除了语法作用外在就是在必要时对条件分段,以增加程序的可读性。所以在if语句中,如果条件明了而且在语法上不需要括号,那么就不要使用括号;如果条件过于复杂,那么就使用几个括号。总之,一切为了清晰。
如果在if语句中有多个条件要测试,应按照计算的复杂度进行排列。比如有三个条件:Condition1、Condition2和Condition3。按照这个顺序,复杂度依次上升,与就是说Condition1比Condition2快,Condition2比Condition3快,则if语句就这么写:
if Condition1 and Condition2 and Condition3 then
begin
  …
end;
 
2.3   case语句
case语句中每种情况的常量应当按照字母或数字的顺序排列。
每种情况的处理与语句不要行数太多,因为这样会使整个case语句过长。应该尽量使用过程或函数以减少case语句的复杂度。
case语句的else子句只用于处理默认情况或进行错误检测。
 
2.4   for语句
循环语句共有三种:for语句、while语句和repeat语句。如果循环次数确定,那么就使用for语句;如果在第一次循环之前要实现执行一次以获得初始比较数值,那么就使用repeat语句;其他情况基本上都可以使用while语句。实际上这三条语句可以覆盖所有的循环需要,而且可以互相替代。
在Delphi中要注意,for语句中的循环变量不可以在循环体中被赋值。这是与Turbo Pascal不同的地方。
另外,在循环语句,尤其是多个循环嵌套使用的代码中,要小心使用break和exit关键字。
 
2.5   while语句
建议不要使用exit来退出while循环。退出循环的最好方法是通过循环条件。如果在循环体中要考虑到意外处理,那么就要搞清楚处理的方式和对相关变量的影响。
 
2.6   repeat语句
repeat语句类似于while语句,且遵循同样的规则。
 
2.7   with语句
with语句是一类非常容易出错的语句,使用with语句可以有效避免重复的输入工作。但是这样会使程序难以检查。所以,不要随便使用with语句,而且绝对不要使用带有两个或多于两个对象或记录的with语句。顺便提一下,尽量不要随便使用with语句的原因不是因为易于出错,而是因为难以排错。考虑下面的例子:
with Label1, Label2 do
begin
  …
  Caption := “Delphi”;
  …
end;
这样会出现什么问题呢?因为这条语句夹在众多语句之中,所以当程序出现问题时很难搞明白是怎么回事。
 
3. 过程和函数
3.1   命名与格式
(1)       过程和函数的名称应当由一个或多个完整的单词组成。名称的首字母应当大写,其后每个单词的首字母也应当大写,其它字母则小写。如果名称过长,可以考虑使用单词的缩写,但是要使用常用的缩写,比如:Tmp、Str。对于使用英文简写的单词或词组要全部使用大写字母,比如:ID、UTS。下面是几个正确的写法:GetUserID、InputPassword、FindUserListFile、ImportUserNameFromStr。
(2)       过程或函数的名称应当能够简单的表示该过程或函数的行为。使用动词和名词为过程和函数命名,动词表示行为,而名词表示行为的对象或目的。根据惯例,设置输入参数值的过程名要以Set为前缀,读取数值的函数名要以Get为前缀。下面是几个正确的命名:SaveToFile、ReadFromFile、SetUserID、GetUsersNumber。
 
3.2   形参
(1)       格式:形参的排列要按照日常惯用的顺序,比如:姓名、性别、年龄。而且在此基础上要尽可能地把同一类型的形参归并在一起。例如:
procedure SetUserInformation(Name, ID: string; Age: integer);
(2)       命名:所有的形参的命名要能够表达出该形参的用途。在合适的情况下,形参的名称最好以大写字母A为前缀。

来源:upschool.com.cn
作者:
关键字:
发表日期:2007-2-10 7:35:23

网页显示有限 阅读全文请下载本文完整版WORD文档

上一篇:原来的控件delphi7里何处寻?   下一篇:计算PI值到一亿位的算法


共3页 9 7 [1] [2] [38 :>

2009-1-8 6:32:43
本文的相类似文章
在学习中进步 在进步中成长 教程中国相随您的成长之路
华腾联合科技股份有限公司版权所有
广告联系:Rosibo@163.com