代码规范:
1.这些规范都是官僚制度下产生的浪费大家的编程时间、影响人们开发效率, 浪费时间的东西。
编码规范它包含了代码格式,还包括了编码风格和其他规范,通常涉及:缩进、空格使用、Tab使用
注释、命题习惯、代码行长度和语言特点风格,从而使大家能够很方便得互相阅读对方的代码从而促进
团队中的沟通与交流。不是浪费时间。
2.我是个艺术家,手艺人,我有自己的规范和原则。
艺术家的表现层次如果只是在规范上面,显然不是个优秀的艺术家,通过大家都容易接受的方式可以
让自己的创造力更好得表现出来。
3.规范不能强求一律,应该允许很多例外。
我觉得只要不是什么太苛刻得规范,还是尽量做到一律吧,起码别人看起来不会产生情绪。
4.我擅长制定编码规范,你们听我的就好了。
要结合大家的特点,不能仅仅是依靠个人的习惯。
代码复审:
这是我给结对组同学的代码复审表。
General | |
Does the code work? Does it perform its intended function, the logic is correct etc. | 程序能正常运行,各个功能都完整。 |
Is all the code easily understood? | 代码结构清晰,好好儿解释代码。 |
Does it conform to your agreed coding conventions? These will usually cover location of braces, variable and function names, line length, indentations, formatting, and comments. | 看来他的代码跟厉害,看他的代码学的很多了。 |
Is there any redundant or duplicate code? | Generate和Compute函数的功能很多了,这两个函数可以在模块化一些。 |
Is the code as modular as possible? | 没有划分模块 |
Can any global variables be replaced? | 全局变量比较合适 |
Is there any commented out code? | 代码都比较干净找不到删除的地方 |
Do loops have a set length and correct termination conditions? | 正常结束 |
Can any of the code be replaced with library functions? | 可以用到库函数 |
Can any logging or debugging code be removed? | 没有的 |
Security | |
Are all data inputs checked (for the correct type, length, format, and range) and encoded? | 都做到了 |
Where third-party utilities are used, are returning errors being caught? | 未使用 |
Are output values checked and encoded? | 都正确 |
Are invalid parameter values handled? | 输入错的话不进行,并结束程序 |
Documentation | |
Do comments exist and describe the intent of the code? | 没有写文档 |
Are all functions commented? | 没有写文档 |
Is any unusual behavior or edge-case handling described? | 没有写文档 |
Is the use and function of third-party libraries documented? | 没有写文档 |
Are data structures and units of measurement explained? | 没有写文档 |
Is there any incomplete code? If so, should it be removed or flagged with a suitable marker like ‘TODO’? | 没有写文档 |
Testing | |
Is the code testable? i.e. don’t add too many or hide dependencies, unable to initialize objects, test frameworks can use methods etc. | 代码可以测试 |
Do tests exist and are they comprehensive? i.e. has at least your agreed on code coverage. | 没有设计测试代码 |
Do unit tests actually test that the code is performing the intended functionality? | 没有设计测试代码 |
Are arrays checked for ‘out-of-bound’ errors? | 没有进行数组越界检查 |
Could any test code be replaced with the use of an existing API? | 没有设计测试代码 |