第四次博客作业--结对项目

第四次博客作业--结对项目

任务

      在学习通上注明结对的成员对: 三班郭文杰-----三班王言冬

任务

      结对的成员共同完成本次作业,撰写博客并将结对项目的程序发布到github上

       链接:https://github.com/mango67/wj

      博客的内容安排如下:

  1. 提供你的结对成员的博客链接地址

              郭文杰的博客园链接地址:https://www.cnblogs.com/gywx/

              王言冬的博客园链接地址:https://www.cnblogs.com/wyd123/

 

         2.结对成员对四则运算项目进行代码互审,并给出代码审查表

            根据课上所学和教材上的内容,可基本列出以下审查表:

             A.郭文杰的代码复查由王言冬完成

             B.王言冬的代码复查由郭文杰完成

 

复查内容

郭文杰的代码复查

王言冬的代码复查

概要部分

代码符合需求和规格说明么?

 没有完成剔除重复算式的功能

没有实现算式的查重和是否包含乘除的操作

代码设计是否考虑周全?

 在正负数上欠考虑,其他考虑较为齐全

 总体来说比较周全

代码可读性如何?

较好

 较好

代码容易维护吗?

 容易,唯一不足就是用C编写,适用面有限

 容易,代码清晰易懂,易维护

代码的每一行都执行并检查过了吗?

 均已检查

 均已检查

设计规范部分

设计是否遵循已知的设计模式或项目中常用的模式?

 遵循

 遵循

有没有硬编码或字符串/数字的存在?

 没有

 没有

代码有没有依赖于某一平台,是否会影响将来的移植(如Win32到win64)?

无,不存在移植问题

 无,不存在移植问题

开发者新写的代码能否用已有的Library/SDK/Framework中的功能实现?在本项目中存在类似的功能可以调用二不用全部重现实现?

 没有

没有 

有没有无用的代码可以清除?

 无

 无

代码规范部分

修改的部分符合代码标准和风格吗?

 符合

符合 

具体代码部分

有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常?

 无错误

 无错误

参数传递有没有错误,字符串的长度是字节的长度还是字符(可能是单/双字节)的长度,是以0开始计数还是以1开始计数?

 无误,字符串的长度是字符长度,以0开始计数

 无误,字符串的长度是字符长度,以0开始计数

switch语句的default分支是如何处理的?循环有没有可能出现死循环?

 无default语句,无死循环

无default语句,无死循环

数据结构中有没有用不到的元素?

 没有

没有

效能

代码的效能(Performance)如何?最坏的情况是什么样的?

代码效能较好

 代码效能较好

代码中是否有明显可优化的部分?

 有可优化的地方

有可优化的地方 

对于系统或网络的调用是否会超时?如何处理?

不存在该问题

不存在该问题

可读性

代码可读性如何?有没有足够的注释?

 可读性较好,有一部分注释

代码可读性较好,有注释

可测试性

代码是否需要更新或创建新的单元测试?

 需要

不需要

         3.选取其中一个成员的项目为基础,进行结对编程。结对项目撰写的博客要求:

    (1)结合课堂讲授内容,制订一份2人共同遵守的代码编写基本规范(至少包括注释规范与变量名规范)

                 注释规范:

  •      单行注释使用符号//,多行或段落注释使用/* */,块级用/** **/注释
  •      较为复杂的注释要放在函数头处,比如参数类型的注释
  •      注释应使用ASCII字符,不用中文或其他特殊字符

                 变量名规范

  •      统一用数字、字母、下划线、$组成,且首字符不可以是数字
  •      要见名知意,方便理解代码
  •      在变量名前面不加不必要的修饰符
  •      使用英文字母作为变量名
  •      首字母大写,不超过10个字符长度

                 缩进

  •      统一缩进使用Tab键缩进

                 行宽

  •      不超过100字符

                分行

  •     不把多条语句放在同一行
  •      变量类型定义在不同行

    (2)描述结对编程的感受

             从一开始我们就感觉编程是一个人的事情,各自负责自己的板块,最后秩序将这些合成为一个完整的程序。本来一个人就可以完成的模块,现在用两个人完成,感觉很麻烦,两个人还需要磨合,会浪费更多的时间。但是在这几天的结对编程中,我们俩分享各自的想法,共同改进代码,合作解决编程过程中的问题,这样不仅使编程效率提高了,而且从另一方面来说,我们互相激励,在争论中巩固自己的知识体系,极大地增添了我们俩人的自信心,最终很愉快,高效率地完成了任务。

    (3)结对场景照片

 

4.结对项目编程要求

   我们针对代码审查表,对原有代码做了如下改变:

   (1)添加了方法check实现对重复算式的检查,避免出现重复的算式,提高了出题的质量

   (2)增大了操作数的范围,实现可以随机输入出题数量,减少了出题数量的限制

   (3)对操作的过程进行了更明确的解释,通过简单地数字输入来实现不同功能

posted @ 2019-10-23 14:10  wangyd  阅读(140)  评论(0编辑  收藏  举报