第四次博客作业-结对项目
1.提供你的结对成员的博客链接地址
翟平同学的博客地址:https://www.cnblogs.com/thbk/archive/2019/09.html
2.结对成员对四则运算项目进行代码互审,并给出代码审查结果表
翟平的代码审查表(由张凯媛完成):
编号 |
问题 |
是 |
否 |
不适用 |
|
变量,Auribute,和常量声明缺陷(VC) |
|
|
|
1 |
变量和常量的命名是否与约定保持一致? |
|
√ |
|
2 |
是否存在容易混淆的相似的变量和属性名? |
√ |
|
|
3 |
变量和属性是否书写正确? |
|
√ |
|
4 |
变量和属性是否被正确的初始化? |
√ |
|
|
5 |
非局部变量是否能用局部变量替换? |
|
√ |
|
6 |
所有的for循环的控制变量是否都在循环顶部被声明? |
|
√ |
|
7 |
是否有应该命名为常量的文字常量? |
|
√ |
|
8 |
变量和属性是否可以用常量替换? |
√ |
|
|
9 |
属性是否可以用本地变量? |
|
√ |
|
10 |
所有的属性是否都有正确的访问限制符? |
√ |
|
|
11 |
是否有静态属性应该是非静态或vice-versa? |
|
√ |
|
12 |
是否有应该命名为常量的文字常量? |
|
√ |
|
|
方法定义缺陷(FD) |
|
|
|
1 |
变量和属性是否书写正确? |
|
√ |
|
2 |
方法名的描述方法是否与命名约定一致? |
|
√ |
|
3 |
每个方法的参数值在使用之前是否都作了检查? |
|
√ |
|
4 |
对于每一个方法,它是否都返回了正确的值? |
|
√ |
|
5 |
每种方法是否都有正确的访问限制符(private, protected, |
|
√ |
|
|
输入输出缺陷(IO) |
|
|
|
1 |
文件在被使用之前是否都被打开? |
|
√ |
|
2 |
输入对象的属性是否与使用的文件一致? |
√ |
|
|
3 |
文件在被使用之后是否都被关闭? |
|
√ |
|
|
计算/数值缺陷(CN) |
|
|
|
1 |
文本中是否有拼写和语法上的错误? |
|
√ |
|
2 |
所有的I/O异常处理的是否合理? |
√ |
|
|
|
模块间接口缺陷 |
|
|
|
1 |
方法调用的参数的数量,顺序,类型和值是否与该方法声明一致? |
|
√ |
|
2 |
度量单位是否一致(如:公分 vs. 公尺)? |
√ |
|
|
3 |
如果对象或数组被传递,它们是否改变?是否被调用方法正确改变? |
|
√ |
|
|
注释缺陷(CM) |
|
|
|
1 |
每一个方法,类和文件是否都有适当的头注释? |
√ |
|
|
2 |
每一个属性,变量和常量的声明是否都有注释? |
|
√ |
|
3 |
每个类和方法的潜在行为是否都有用简易的语言进行解释? |
|
√ |
|
4 |
方法和类的头注释是否和它们的功能保持一致? |
|
√ |
|
5 |
注释和代码是否保持一致? |
|
√ |
|
6 |
注释对于理解代码是否有帮助? |
|
√ |
|
7 |
代码中的注释是否充分? |
|
√ |
|
8 |
代码中的注释是否过多? |
|
√ |
|
张凯媛的代码审查表(由翟平完成):
编号 |
问题 |
是 |
否 |
不适用 |
|
变量,Auribute,和常量声明缺陷(VC) |
|
|
|
1 |
变量和常量的命名是否与约定保持一致? |
√ |
|
|
2 |
是否存在容易混淆的相似的变量和属性名? |
|
√ |
|
3 |
变量和属性是否书写正确? |
|
√ |
|
4 |
变量和属性是否被正确的初始化? |
√ |
|
|
5 |
非局部变量是否能用局部变量替换? |
|
√ |
|
6 |
所有的for循环的控制变量是否都在循环顶部被声明? |
|
√ |
|
7 |
是否有应该命名为常量的文字常量? |
|
√ |
|
8 |
变量和属性是否可以用常量替换? |
|
√ |
|
9 |
属性是否可以用本地变量? |
|
√ |
|
10 |
所有的属性是否都有正确的访问限制符? |
|
√ |
|
11 |
是否有静态属性应该是非静态或vice-versa? |
|
√ |
|
12 |
是否有应该命名为常量的文字常量? |
|
√ |
|
|
方法定义缺陷(FD) |
|
|
|
1 |
变量和属性是否书写正确? |
|
√ |
|
2 |
方法名的描述方法是否与命名约定一致? |
|
√ |
|
3 |
每个方法的参数值在使用之前是否都作了检查? |
|
√ |
|
4 |
对于每一个方法,它是否都返回了正确的值? |
|
√ |
|
5 |
每种方法是否都有正确的访问限制符(private, protected, |
|
√ |
|
|
输入输出缺陷(IO) |
|
|
|
1 |
文件在被使用之前是否都被打开? |
|
√ |
|
2 |
输入对象的属性是否与使用的文件一致? |
|
√ |
|
3 |
文件在被使用之后是否都被关闭? |
|
√ |
|
|
计算/数值缺陷(CN) |
|
|
|
1 |
文本中是否有拼写和语法上的错误? |
|
√ |
|
2 |
所有的I/O异常处理的是否合理? |
|
√ |
|
|
模块间接口缺陷 |
|
|
|
1 |
方法调用的参数的数量,顺序,类型和值是否与该方法声明一致? |
|
√ |
|
2 |
度量单位是否一致(如:公分 vs. 公尺)? |
√ |
|
|
3 |
如果对象或数组被传递,它们是否改变?是否被调用方法正确改变? |
|
√ |
|
|
注释缺陷(CM) |
|
|
|
1 |
每一个方法,类和文件是否都有适当的头注释? |
|
√ |
|
2 |
每一个属性,变量和常量的声明是否都有注释? |
|
√ |
|
3 |
每个类和方法的潜在行为是否都有用简易的语言进行解释? |
|
√ |
|
4 |
方法和类的头注释是否和它们的功能保持一致? |
|
√ |
|
5 |
注释和代码是否保持一致? |
|
√ |
|
6 |
注释对于理解代码是否有帮助? |
|
√ |
|
7 |
代码中的注释是否充分? |
|
√ |
|
8 |
代码中的注释是否过多? |
|
√ |
|
3.选取翟平同学的项目为基础,进行结对编程。结对项目撰写的博客要求:
1.代码编写基本规范
变量名规范:变量名一定要以标识符命名为基本原则
2.将标准首字母缩写词的第一个字母大写
3.避免长型名称
4.使用完整描述符来准确地描述参数或类
4.描述结对编程的感受
大大提高了编程效率,虽然花费时间更长,但是产生的bug比个人编程少,互相监督,可以增加代码和产品的质量。
GitHub地址:https://github.com/blabla-z/zzz
5.结对编程图片
增加的需求:(a)考虑数据异常处理问题,如在输入题目生成范围的数据时,输入了“abc“等字符数据,程序如何处理。
(b)增大算式生成数的范围(如整数存不下的数),程序如何处理。