1.结对成员的博客园地址:
孙苍健的博客:https://www.cnblogs.com/suncangjian/p/11734899.html
2. 代码审查表:
a) 吴宇的审查表
序号 |
内容 |
完成度 |
1.概要部分 |
||
1.1 |
代码符合需求和规格说明吗? |
一般 |
1.2 |
代码设计是否考虑周全? |
否 |
1.3 |
代码可读性如何? |
良好 |
1.4 |
代码易于维护吗? |
一般 |
1.5 |
代码的每一行都执行并检查过了吗? |
是 |
2.设计规范部分 |
||
2.1 |
设计是否遵从已知的设计模式或设计中常用的模式? |
是 |
2.2 |
有没有硬编码或字符串/数字等存在? |
有 |
2.3 |
代码有没有依赖于某一平台,是否会影响将来的移植? |
否 |
2.4 |
开发者新写的代码能否用已有的Library/SDK/Framework中的功能实现?在本项目中是否存在类似的功能可以调用而不用全部重新实现? |
否 |
2.5 |
有没有无用的代码可以清除? |
有 |
3.代码规范部分 |
||
3.1 |
修改的部分符合代码标准和风格么(详细条文略) |
符合 |
4. 具体代码部分 |
||
4.1 |
有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常? |
没有 |
4.2 |
参数传递有无错误? |
无 |
4.3 |
边界条件是如何处理的?switch 语句的default 分支是如何处理的?循环有没有可能出现死循环? |
无 |
4.5 |
有没有使用断言(Assert)来保证我们认为不变的条件真的得到满足? |
无 |
4.6 |
有无可能存在资源泄漏(内存、文件、各种GUI 资源、数据库访问的连接,等等)?有没有优化的空间? |
有 |
4.7 |
数据结构中有没有用不到的元素? |
无 |
5.效能 |
|
|
5.1 |
代码的效能(Performance)如何? |
一般 |
5.2 |
代码中,特别是循环中是否有明显可优化的部分(C++中反复创建类、C#中 string的操作是否能用 StringBuilder来优化)? |
有 |
5.3 |
对于系统和网络的调用是否会超时?如何处理? |
会 |
6.可读性 |
|
|
6.1 |
代码可读性如何?有没有足够的注释? |
良好 |
7.可测试性 |
|
|
7.1 |
代码是否需要更新或创建新的单元测试? |
否 |
b) 孙苍健的审查表
序号 |
内容 |
完成度 |
1.概要部分 |
||
1.1 |
代码符合需求和规格说明吗? |
良好 |
1.2 |
代码设计是否考虑周全? |
是 |
1.3 |
代码可读性如何? |
良好 |
1.4 |
代码易于维护吗? |
良好 |
1.5 |
代码的每一行都执行并检查过了吗? |
是 |
2.设计规范部分 |
||
2.1 |
设计是否遵从已知的设计模式或设计中常用的模式? |
是 |
2.2 |
有没有硬编码或字符串/数字等存在? |
有 |
2.3 |
代码有没有依赖于某一平台,是否会影响将来的移植? |
否 |
2.4 |
开发者新写的代码能否用已有的Library/SDK/Framework中的功能实现?在本项目中是否存在类似的功能可以调用而不用全部重新实现? |
能 |
2.5 |
有没有无用的代码可以清除? |
有 |
3.代码规范部分 |
||
3.1 |
修改的部分符合代码标准和风格么(详细条文略) |
符合 |
4. 具体代码部分 |
||
4.1 |
有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常? |
有 |
4.2 |
参数传递有无错误? |
无 |
4.3 |
边界条件是如何处理的?switch 语句的default 分支是如何处理的?循环有没有可能出现死循环? |
|
4.5 |
有没有使用断言(Assert)来保证我们认为不变的条件真的得到满足? |
无 |
4.6 |
有无可能存在资源泄漏(内存、文件、各种GUI 资源、数据库访问的连接,等等)?有没有优化的空间? |
有 |
4.7 |
数据结构中有没有用不到的元素? |
无 |
5.效能 |
|
|
5.1 |
代码的效能(Performance)如何? |
良好 |
5.2 |
代码中,特别是循环中是否有明显可优化的部分(C++中反复创建类、C#中 string的操作是否能用 StringBuilder来优化)? |
有 |
5.3 |
对于系统和网络的调用是否会超时?如何处理? |
是 |
6.可读性 |
|
|
6.1 |
代码可读性如何?有没有足够的注释? |
很好 |
7.可测试性 |
|
|
7.1 |
代码是否需要更新或创建新的单元测试? |
否 |
3. 选取其中一个成员的项目为基础,进行结对编程。结对项目撰写的博客要求:
(3-1)代码编写基本规范(至少包括注释规范与变量命名规范)。
3.1.1:变量名规范
1.必须以字母、下划线、或者美元符$开头;
2.除开头外后面的部分可以有字母、下划线、美元符$以及数字组成;
3.变量名不可以和java的关键字冲突;
3.1.2:注释规范
1.我们可以选择使用//进行单行注释
2.我们也可以使用/* */进行多行注释
3.尽量在项目的目录中添加ReadMe文件,将该项目的实现功能和具体需求进行记录
4.在代码的实现区域可以添加代码块的解释,方便使用的记录
4、描述结对编程的感受。
这次编程过程,我们以孙苍健同学的代码为基础进行部分更新,在代码规范方面进行了细致的排查,严格的按照所学习的代码规范进行改动,并改进一些方法,删除一些多余的代码。在我们的合作之下,也有一些困难无法解决,我们寻求了其他同学的帮助,在大神的帮助下,完成了此次作业,我们深深的感到了自己的不足,在以后的时间里,我们会更加努力,不断学习,力求做得更好。
5、结对场景照片。
6、 结对项目编程要求:
新增需求:(a)考虑数据异常处理问题,如在输入题目生成范围的数据时,输入了“abc“等字符数据,程序如何处理。
(b)增大算式生成数的范围(如整数存不下的数),程序如何处理
github的连接地址:https://github.com/wuyu-20194610/wuyu/tree/master/SD