结对编程 第二阶段(零零七)

一、实验目标
 1)体验敏捷开发中的两人合作。

    2)进一步提高个人编程技巧与实践。

 

二 、实验内容
 1)根据以下问题描述,练习结对编程(pair programming)实践;

    2)要求学生两人一组,自由组合。每组使用一台计算机,二人共同编码,完成实验要求。

    3)要求在结对编程工作期间,两人的角色至少切换 4 次;

    4)编程语言不限,版本不限。建议使用 Python 或 JAVA 进行编程。

 三、实验过程

1、代码规范

   1.1 语法规范
  (1)用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致展现的方法。


  (2)嵌套元素应当缩进一次(即两个空格)。

  (3)对于属性的定义,确保全部使用双引号,绝不要使用单引号。


  1.2命名规范

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

  (2)一个唯一包名的前缀总是全部小写的字母。

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

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


  1.3.注释规范

  (1)注释尽可能使用“//”;

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

  (3)每个方法必须添加文档注释。

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

  1.4.文件名规范

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

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

2、程序的总体设计

  算法描述:在主函数中我们选定了一个4*4的矩阵,并将矩阵中邻居状态进行初始化,然后引用methods类中的三个方法进行变换。

  其中Methods类存放三个方法:

  check方法,用来检测存放着所有邻居状态的二维矩阵的所有位置,并用point数组,记录对应位置下一轮的状态,用代表1下一代死,2下一代继续活,3下一代复活。
  getNext方法,用来将二维矩阵存储的邻居状态,根据point数组更新到下一代的状态,并将矩阵返回。
  printLifeMap方法,用来将二维矩阵中的所有邻居,按照图示的状态打印出来。

 

3、程序结对编程过程及功能实现情况

  与队友进一步对程序的bug及问题进行修复。

 

 

 

 经过几天的编程与测试,程序功能已经基本完善。

 

 

4、项目github地址

  项目地址: https://github.com/mero-moon/-

 

5、实验总结

 

  结对编程实验相对于自己编程,效率与对程序的多方了解提升了很多,通过与队友协作编程也让我知道了在程序的编译测试运行过程中,拥有一个拍档或者一个团队能更加高效率高质量的完成工作任务并提升自己的技术水平。他人往往能够看到你的不足,通过他的角度可能更容易搞清楚自己在编程中出现的问题。结对编程是一次重要的经历,合作完成项目的喜悦也是极其振奋人心的。

 

附上队友的本次实验博客文章:https://www.cnblogs.com/xiaomin0626/p/12620586.html

posted @ 2020-04-04 22:22  我儿先志  阅读(131)  评论(0编辑  收藏  举报