您的位置:控制工程论坛网论坛 » 教程与手册 » 林锐《高质量编程指南》学习笔记

xilinxue

xilinxue   |   当前状态:在线

总积分:16186  2024年可用积分:0

注册时间: 2008-06-26

最后登录时间: 2020-03-22

空间 发短消息加为好友

林锐《高质量编程指南》学习笔记

xilinxue  发表于 2008/12/3 19:16:34      648 查看 0 回复  [上一主题]  [下一主题]

手机阅读

1.头文件规范:

2.【规则】一行代码只做一件事情,如只定义一个变量,或只写一条语句。这样的代码容易阅读,并且方便于写注释。如:

int width; // 宽度
int height; // 高度
int depth; // 深度
x = a + b;
y = c + d;
z = e + f;
if (width < height)
{
dosomething();
}
for (initialization; condition; update)
{
dosomething();
}
// 空行
other();

 

3.【建议】尽可能在定义变量的同时初始化该变量(就近原则)
如:

int  width  =   10 ;   //  定义并初绐化width 
int  height  =   10 //  定义并初绐化height 
int  depth  =   10 ;   //  定义并初绐化depth 

 

4.空格写法:
 【规则】if、for、while等关键字之后应留一个空格再跟左括号‘(’,以突出关键字。

 【规则】函数名之后不要留空格,紧跟左括号‘(’,以与关键字区别。

 【规则】‘(’向后紧跟,‘)’、‘,’、‘;’向前紧跟,紧跟处不留空格。

 【规则】‘,’之后要留空格,如Function(x, y, z)。如果‘;’不是一行的结束符号,其后要留空格,如for (initialization; condition; update)。

 【规则】赋值操作符、比较操作符、算术操作符、逻辑操作符、位域操作符,如“=”、“+=” “>=”、“<=”、“+”、“*”、“%”、“&&”、“||”、“<<”,“^”等二元操作符的前后应当加空格。

 【规则】一元操作符如“!”、“~”、“++”、“--”、“&”(地址运算符)等前后不加空格。

 

5.【建议】对于表达式比较长的for语句和if语句,为了紧凑起见可以适当地去掉一些空格,如for (i=0; i<10; i++)和if ((a<=b) && (c<=d))

 

6.长行拆分:
 【规则】长表达式要在低优先级操作符处拆分成新行,操作符放在新行之首(以便突出操作符)。拆分出的新行要进行适当的缩进,使排版整齐,语句可读。

 

7.应当将修饰符 * 和 & 紧靠变量名
例如:
char  *name;
int   *x, y; // 此处y不会被误解为指针

 

8.注释的写法:
   程序块的注释常采用“/*…*/”,行注释一般采用“//…”。

 【规则】注释是对代码的“提示”,而不是文档。程序中的注释不可喧宾夺主,注释太多了会让人眼花缭乱。注释的花样要少。

 【规则】边写代码边注释

 【规则】注释的位置应与被描述的代码相邻,可以放在代码的上方或右方,不可放在下方。

 

9.类的版式:
   我们不可以滥用类的封装功能,不要把它当成火锅,什么东西都往里扔。
   将public类型的函数写在前面,而将private类型的数据写在后面,“以行为为中心”,重点关注的是类应该提供什么样的接口(或服务)。

 

10.命名规则:
   切忌使用汉语拼音来命名。
 【规则】命名规则尽量与所采用的操作系统或开发工具的风格保持一致。
   例如Windows应用程序的标识符通常采用“大小写”混排的方式,如AddChild。而Unix应用程序的标识符通常采用“小写加下划线”的方式,如add_child。别把这两类风格混在一起用。
 【规则】变量的名字应当使用“名词”或者“形容词+名词”。
例如:

float   value;
float   oldValue;
float   newValue; 

 【规则】全局函数的名字应当使用“动词”或者“动词+名词”(动宾词组)。类的成员函数应当只使用“动词”,被省略掉的名词就是对象本身。
例如:
DrawBox();  // 全局函数
box->Draw();  // 类的成员函数

 【建议】尽量避免名字中出现数字编号,如Value1,Value2等,除非逻辑上的确需要编号。这是为了防止程序员偷懒,不肯为命名动脑筋而导致产生无意义的名字(因为用数字编号最省事)。

1楼 0 0 回复