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

任务1:(5分)

在学习通上注明结对的成员对格式:四班龚艳飞-----四班罗双奇

任务295

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

博客的内容安排如下:

1)提供你的结对成员的博客链接地址(5分)

罗双奇的博客链接地址:https://www.cnblogs.com/playeroflife/p/11723137.html

 

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

 龚艳飞的代码审查表(由罗双奇完成)(10分)

      

 

 

 

 

 

单元测试代码覆盖率截图:

 

 罗双奇的代码审查表(由龚艳飞完成)(10分)

 

 

 

 

 

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

 

最终结果选择为龚艳飞的项目为基础进行结对编程

 

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

 

1)变量命名规则

1、尽量使用完整的英文描述符

2、采用适用于相关领域的术语

3、采用大小写混合使名字可读

4、尽量少用缩写,但如果用了,必须符合整个工程中的统一定义

5、避免使用长的名字(小于 15 个字母为正常选择)

6、避免使用类似的名字,或者仅仅是大小写不同的名字

7、避免使用下划线(除静态常量等)

    

2)包( Package )的命名

Package 的名字应该采用完整的英文描述符,都是由一个小写单词组成。并且包名的前缀总是一个顶级域名,通常是 comedugovmilnetorg 等;

3)类( Class )的命名

类名应该是个一名词,采用大小写混合的方式,每个单词的首字母大写。尽量保证类名简洁而富于描述。使用完整单词,避免缩写词。

4)接口( Interface )的命名

基本与 Class 的命名规范类似。在满足 Classd 命名规则的基础之上,保证开头第一个字母为 ”I”,便于与普通的 Class区别开。其实现类名称取接口名的第二个字母到最后且满足类名的命名规范;

5)异常( Exception )的命名

异常( Exception ) 通常采用字母 e 表示异常,对于自定义的异常类,其后缀必须为 Exception

6)方法( Method )的命名

方法名是一个动词,采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写。方法名尽可能的描述出该方法的动作行为。

7)参数( Param )的命名

第一个单词的首字母小写,其后单词的首字母大写。参数量名不允许以下划线或美元符号开头,虽然这在语法上是允许的。

 

一个很好的可遵循的有关注释的经验法则是:

1、一般概念

注释应该增加代码的清晰度

保持注释的简洁

在写代码之前或同时写注释

注释出为什么做了一些事,而不仅仅是做了什么

 

2、注释哪些部分

类:类的目的、即类所完成的功能。

接口:在满足类注释的基础之上,接口注释应该包含设置接口的目的、它应如何被使用以及如何不被使用。在接口注释清楚的前提下对应的实现类可以不加注释;

方法注释:对于设置与获取成员的方法,在成员变量已有说明的情况下,可以不加注释;普通成员方法要求说明完成什么功能,参数含义是什么且返回值什么;另外方法的创建            时间必须注释清楚,为将来的维护和阅读提供宝贵线索;

方法内部注释:控制结构,代码做了些什么以及为什么这样做,处理顺序等,特别是复杂的逻辑处理部分,要尽可能的给出详细的注释;

参数: 参数含义、及其它任何约束或前提条件;

 

b)描述结对编程的感受。

俗话说”三个臭皮匠,胜过一个诸葛亮”,两人在做同一件事时,集思广义发挥各自优点,可以使我分析更能切中要害。

所谓条条大路通罗马,捷径的路只有那么几个。在两人不断集思广益努力下,错误中我们寻找到了正确的方向使用更加简洁更加高效的代码实现程序目的。

 

相互督促可以使我们都能集中精力,更加认真的工作,比传统的孤胆英雄式开发要高效不止一个台阶。比如我们一个人,按照共同完成的活动图去编程,完成一小段逻辑后,另外一个人会马上给出意见,说出代码存在的潜在问题,这个潜在的问题,很可能是因为我们当时对项目理解存在偏差造成的。很可能这个时候我们要对设计进行改动以适应项目。

任何一段代码都被两双眼睛看过,两个脑袋思考过,代码的质量会得到有效提高。

 

“三人行必有我师”,相互学习对方的技能,可以提升自己水平。

 

c)结对场景照片

              

 

 

4)结对项目编程要求:(40分)

对结对项目首先完成代码规范和设计规范的修改,其次完成项目增加的需求,最后将完成的项目提交到github上,给出github的连接地址,可以给出简单的设计说明。

github 地址链接https://github.com/playeroflife/20194720/blob/master/demo

 

任务3 增加的需求:

 

a)考虑数据异常处理问题,如在输入题目生成范围的数据时,输入了“abc“等字符数据,程序如何处理。

 private static void writeExpressionsToFile(ArrayList<String> expressionList) {
        File file = new File(FILE_NAME);
        try (FileWriter fileWriter = new FileWriter(file)) {
            fileWriter.append(STUDENT_NO);
            for (String expression : expressionList) {
                fileWriter.append(NEW_LINE);
                fileWriter.append(expression);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

 



b)增大算式生成数的范围(如整数存不下的数),程序如何处理。

 

posted @ 2019-10-22 23:09  晨曦易懂  阅读(211)  评论(0编辑  收藏  举报