因为工程实践的选题与网络安全相关,我找的是360杀毒软件的C++源代码,根据其编程语言或项目特点,分析其在源代码目录结构、文件名/类名/函数名/变量名等命名、接口定义规范和单元测试组织形式等方面的做法和特点。
首先是代码目录结构。
虽然说这些代码是堆在一个文件夹里显得有些凌乱,但是,明显可以发现类的声明与类的定义被分别放置在同名的.h文件和.cpp文件里,相互对应方便查找。
其次是有关文件名、类名、方法名、变量名的命名方式。
① 文件名是相关类的名字,用英文小写并以下划线隔开,方便对应查找。
② 类的名字用英文小写,单词首字母用大写而非下划线隔开,尽量不简写。
③ 类成员函数命名与类名同。
④ 类成员变量命名用英文小写并以下划线将单词隔开,不简写。
然后是一些注释。
① 在.h的类声明文件开头有对类的功能一些解释说明。
② 在.h文件里可以看到对类成员变量的注释说明。
③ 在.cpp文件里也有对函数的注释。
但是没有看到相关的单元测试组织形式。
总结一下有哪些做法符合代码规范和风格一般要求。
① 文件名/类名/函数名/变量名的命名多使用英文单词的组合并用大写字母或下划线加以分隔,直观,望文知意便于辨认阅读。
② 常量都用宏标识,避免神仙数出现,增强代码可读性。
③ 对每一个成员变量在声明时都进行注释,并且封装在类部私有。
④ 在文件开头对有文件内容进行阐述。
⑤ 类的声明与类的定义被分别放置在同名的.h文件和.cpp文件里,相互对应方便查找。
同时在格式上还有一些可以改进的地方。
① 没有用文件夹对文件进行分类,使得文件都堆在一起。
② 仅仅只有两个文件的开头有对有文件内容进行解释的注释,其他文件都没有。同样在对函数的注释也不够清楚。
③ 在很多地方使用C语言的指针与宏,而不是更具有出C++的语言特点的引用与常量const。
④ 没有看到相关的单元测试组织形式。
最后,总结几点C++或项目在代码规范和风格的一般要求。
① 命名使用英文单词小写的组合,用大写字母或下划线加以分隔各单词。
② 命名要求望文生义,严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。
③ 在.h文件里放类的声明,在.cpp文件里放类的定义,并两文件同名,相互对应方便查找。
④ 文件开头要有对有文件内容进行解释的注释。
⑤ 在二目、三目运算符的左右两边都加一个空格,更好看。
⑥ 所有的排版注意缩进与空行。每个语句独成一行。所有的左大括号最好也另起一行。