结对编程(阶段二)

一、实验目标

 1)体验敏捷开发中的两人合作。
 2)进一步提高个人编程技巧与实践。

二 、实验内容

  1)根据以下问题描述,练习结对编程(pair programming)实践;
  2)要求学生两人一组,自由组合。每组使用一台计算机,二人共同编码,完成实验要求。
  3)要求在结对编程工作期间,两人的角色至少切换 4 次;
  4)编程语言不限,版本不限。建议使用 Python 或 JAVA 进行编程。

 

三、实验内容

1、代码规范

1.命名规范

(1)所有的标示符都只能用ASCⅡ字母(A-Z或a-z)、数字(0-9)和下划线“_”。

(2)一个唯一包名的前缀总是全部小写的字母。例如:www.tonysun.cc

(3)类名是一个名词,采用大小写混合的方式,每个单词的首字母大写。例如:Tony。

(4)接口的大小写规则与类名相似:例如:Tony。

(5)方法名是一个动词或动词词组,采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写。例如:setNeekeName(String neekeName)。

(6)变量名第一个字母小写,任何中间单词的首字母大写。变量名应简短且可以顾名思义,易于记忆。例如:neekeName、neekeAddress。避免单个字符的变量名,除非是一次性的临时变量。

(7)常量的声明应该全部大写,每个单词之间用“_”连接。例如:final String WWW_TONY_CN = "www.tonysun.cc";

2.注释规范

(1)注释尽可能使用“//”;对于所有的javadoc的注释则使用“/** */”;而临时对代码块进行注释尽量使用“/* */”。

(2)所有的源文件都应该在开头有一个注释,其中列出文件名、日期和类的功能概述。

(3)每个方法必须添加文档注释(类的main()方法除外)。

(4)每个属性必须添加注释。

(5)代码中至少包含15%的注释。

(6)注释使用中文。

3.缩进排版规范

(1)避免一行的长度超过60个字符。

(2)使用Eclipse的源代码的格式化功能完成代码的缩进排版(Ctrl+Shift+F)。

4.文件名规范

(1)一个Java源文件只能存储一个Java类。

(2)文件名与Java类名相同。

(3)一个类文件的代码行不超过200行。

5.声明规范

(1)一行声明一个变量。

(2)不要将不同类型变量的声明放在同一行。

(3)只在代码块的开始处声明变量。

(4)所有的变量必须在声明时初始化。

(5)避免声明的局部变量覆盖上一级声明的变量。

(6)方法与方法之间以空行分隔。

6.语句规范

(1)每行至少包含一条简单语句。

(2)在return语句中,返回值不使用小括号“()”括起来。

(3)if语句总是用“{”和“}”括起来。

(4)在for语句的初始化或更新子句中,避免因使用三个以上变量,而导致复杂度提高。

(5)当switch的一个case顺着往下执行时(因为没有break语句),通常应在break语句的位置添加注释。

7.编程规范

(1)提供对实例以及类变量的public或private访问控制,尽可能不适用默认值或protected访问控制。

(2)避免用一个对象访问一个类的静态变量或方法。应该用类名代替。

(3)避免在一个语句中给多个变量赋相同的值。

(4)用switch()语句实现多路分支。

(5)如果使用JDBC,则考虑使用java.sql.PreparedStatement,而不是java.sql.Statement。

(6)用于设置对象状态的方法前缀必须是set;用于检索一个布尔类型对象状态的方法前缀必须是is,而用于检索其他方法前缀必须是get。

(7)程序中应尽可能少使用数字(或字符),尽可能定义静态变量来说明该数字(或字符)的含义。程序中需要赋值或比较时,使用前面定义的静态变量。在循环控制中例外。

2、程序的总体设计

程序流程图:

结对编程(阶段二)_第1张图片

 

 

3、结对编程过程

在结对编程过程中一开始实现的是自定义的数字,无法进行修改数字,通过小组进行屏幕分享以及查阅资料增加了随机生成随机数功能

商讨结果如下

结对编程(阶段二)_第2张图片

 

 结对编程(阶段二)_第3张图片

 

结对编程(阶段二)_第4张图片

 

 

 结对编程(阶段二)_第5张图片

 

 运行结果截图:

结对编程(阶段二)_第6张图片

 

 结对编程(阶段二)_第7张图片

 

 

4、项目github地址:https://github.com/1772035039/-

结对编程(阶段二)_第8张图片

 

 

5、实验总结

此次项目,由我和郭建琛同学一起结对编程,我们各负责一部分代码的编写。我们在设计功能时会提出各自的想法,经过讨论选择更合适的方法。在结对编程之后,我感受到了结对编程的优点在于,在我编写代码的过程中,郭建琛同学会在旁边找出我的错误,让我能及时修改代码,这样提高了编程效率,节约时间。在结对编程中,郭建琛同学提出了不同的想法,让我有所收获。从中发现了我们许多的不足,在以后的学习中会改进,争取做的更好。

你可能感兴趣的:(结对编程(阶段二))