第四次博客作业-结对项目
(1) 朱佳美:https://www.cnblogs.com/zjm1230/p/11722962.html(5分)
(2) 结对成员对四则运算项目进行代码互审,并给出代码审查结果表
|
|
王宝锋 |
朱佳美 |
1.概要部分 |
1)代码符合需求和规格说明么? |
符合 |
符合 |
2)代码设计是否考虑周全? |
周全 |
周全 |
|
3)代码可读性如何 |
可读 |
可读 |
|
4)代码容易维护么? |
容易 |
容易 |
|
5)代码的每一行都执行并检查过了吗? |
没有 |
是的 |
|
2.设计规范部分 |
1)设计是否从已知的设计模式或项目中常用的模式 |
是 |
是 |
2)有没有硬编码或字符串1数字等存在? |
有 |
有 |
|
3)代码有没有依赖于某平台,是否会影响将来的移植(如Win32到Win4)? |
没有 |
没有 |
|
4)开发者新写的代码能否用已有的Library/SDK/Framework 是否存在类似的功能可以调用而不用全部重新实现? |
没有 |
没有 |
|
5)有没有无用的代码可以清除? (很多人想保留尽可能多的代码, 因为以后可能会用上, 这样导致程序文件中有很多注释掉的代码,这些代码都可以删除,因为源代码控制已经保存了原来的老代码。 |
没有 |
没有 |
|
3.代码规范部分 |
修改的部分符合代码标准和风格么(详细条文略) ? |
是 |
是 |
4.具体代码部分 |
1)有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常? |
有 |
有处理 |
2)参数传递有无错误,字符串的长度是字节的长度还是字符(可能是单1双字节)的长度, 是以0开始计数还是以1开始计数? |
无错误 从零开始 |
无错误 从零开始 |
|
3)边界条件是如何处理的? switch 语句的default分支是如何处理的?循环有没有可能出现死循环? |
开始指定 没有default分支时,无满足条件语句直接跳出switch语句 没有死循环 |
边界条件开始指定 在没有default分支时,无满足条件语句直接跳出switch语句 没有死循环 |
|
4)有没有使用断言( Assert)来保证我们认为不变的条件真的得到满足? |
没有 |
没有 |
|
6)数据结构中有没有用不到的元素? |
没有 |
没有 |
|
5.效能 |
1)代码的效能( Performance )如何?最坏的情况是怎样的? |
效能不错 |
挺好的 |
2)代码中,特别是循环中是否有明显可优化的部分(C++中反复创建类,C#中string的操作是否能用StringBuilder来优化) ? |
没有 |
没有 |
|
3)对于系统和网络的调用是否会超时?如何处理? |
不会 |
不会 |
(3) 选取其中一个成员的项目为基础,进行结对编程。结对项目撰写的博客要求:(30分)
(a)结合课堂讲授内容,制订一份2人共同遵守的代码编写基本规范(至少包括注释规范与变量命名规范)
- 代码的缩进不用Tab键,用四个空格。
2.代码的行宽可以限定为100字符。
3.在复杂的条件表达式中一定要加括号来表示逻辑优先级。
4.断行遵循每个“{”和“}”都独占一行。
5.变量的命名能够一眼看出类型和代表的含义,并且变量的各个单词间用下划线隔开或者首字母大写。
6.简单、易读、无二义性
(b)描述结对编程的感受。
这次作业中,我和搭档在软件工程作业中进行了结对编程。在结对编程中,双方可以分享自己对作业的想法,帮助对方检查代码,从分利用时间提高效率 。对双方都有比较大的帮助,虽然由于我编程能力的匮乏对速度也会造成一些影响,但也让我学到很多可以一起商讨。这次作业也让我对结对编程有了更深的认识,并且感受到了其利弊,以便以后可以更好地与团队协作。
(c)结对场景照片
github地址:https://github.com/wbf520/wbf