第四次博客作业-结对项目
第四次博客作业
(1) 提供你的结对成员的博客链接地址
王若宇的博客链接地址:https://www.cnblogs.com/iroywang/p/11721825.html
(2)结对成员对四则运算项目进行代码互审,并给出代码审查结果表
代码复审核查表
|
内容 |
王庆祥 |
王若宇 |
1.概要部分 |
1)代码符合需求和规格说明么? |
符合 |
符合 |
2)代码设计是否考虑周全? |
是 |
是 |
|
3)代码可读性如何 |
可读性良好 |
可读性良好 |
|
4)代码容易维护么? |
不易维护 |
易维护 |
|
5)代码的每一行都执行并检查过了吗? |
是 |
是 |
|
2.设计规范部分 |
1)设计是否遵从已知的设计模式或项目中常用的模式 |
是 |
是 |
2)有没有硬编码或字符串或数字等存在? |
有 |
有 |
|
3)代码有没有依赖于某平台,是否会影响将来的移植(如Win32到Win64)? |
没有依赖平台
否 |
没有依赖平台
否 |
|
4)开发者新写的代码能否用已有的Library/SDK/Framework中的功能实现? 是否存在类似的功能可以调用而不用全部重新实现? |
没有
否 |
没有
否 |
|
5)有没有无用的代码可以清除? (很多人想保留尽可能多的代码, 因为以后可能会用上, 这样导致程序文件中有很多注释掉的代码,这些代码都可以删除,因为源代码控制已经保存了原来的老代码。 |
没有 |
没有 |
|
3.代码规范部分 |
修改的部分符合代码标准和风格么(详细条文略) ? |
符合 |
符合 |
4.具体代码部分 |
1)有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常? |
有对错误进行处理,检查了返回值 |
有对错误进行处理,检查了返回值 |
2)参数传递有无错误, |
无错误 |
无错误 |
|
3)有没有使用断言( Assert)来保证我们认为不变的条件真的得到满足? |
没有 |
没有 |
|
4)数据结构中有没有用不到的元素? |
无无用元素 |
没有无用元素 |
|
5.效能 |
1)代码的效能( Performance )如何? |
效能较好
|
效能较好
|
2)代码中,特别是循环中是否有明显可优化的部分 |
否 |
否 |
|
3)对于系统和网络的调用是否会超时?如何处理? |
否 |
否 |
|
6.可读性 |
代码可读性如何?有没有足够的注释? |
可读性高,有足够注释 |
可读性高,有足够注释 |
(3)选取其中一个成员的项目为基础,进行结对编程。结对项目撰写的博客要求:
(a)结合课堂讲授内容,制订一份2人共同遵守的代码编写基本规范(至少包括注释规范与变量命名规范)
1.缩进规范:用四个空格不用Tab键。
2.行宽规范:行宽有限制,限定为100个字符。
3.括号规范:复杂运算用括号表明变量优先级。
4.断行与空白的{ }行规范:每个{和}都独占一行。
5.分行规范:不把多条语句放在一行上,不要把多个变量定义在一行上
6.注释规范: 1)复杂的注释应该放在函数头。
2)注释也要随着程序的修改而不断更新。注释只用ASCII字符,不要用中文和特殊字符,影响程序可移植性。
3)使用不同的显示风格来表示程序的不同部分。
7.变量命名规范: 1)变量命名中不要提到类型或其他语法方面的描述。
2)避免过多描述。
3)如果信息可以从上下文中得到,那么此类信息就不必写在变量名中。
4)避免可要可不要的修饰词
(b)描述结对编程的感受
由于我之前接触编程较少,对很多的程序有时没有思绪,但是结对编程不同于以前的个人编程,在自己没有思路的时候,队友能对我提供帮助,可以共同分担任务,对不懂的也可以共同探讨,相比个人编程而言,结对编程效率会更高。而且在任务多的情况下,可以分配任务,节省了时间。我觉得这是一个互相学习的过程,可以开拓自己的解题思路。而且两人间的不断的复审,也可以提高程序的正确性。也能更有深度的了解程序。 但我们还在磨合阶段,也在讨论中存在异议,但我相信结对编程是更有效的。
(c)结对场景照片
(4)github地址
https://github.com/iroywang/Calculate