结对编程(阶段二)
一、实验目标
1)体验敏捷开发中的两人合作。
2)进一步提高个人编程技巧与实践。
二 、实验内容
1)根据以下问题描述,练习结对编程(pair programming)实践;
2)要求学生两人一组,自由组合。每组使用一台计算机,二人共同编码,完成实验要求。
3)要求在结对编程工作期间,两人的角色至少切换 4 次;
4)编程语言不限,版本不限。建议使用 Python 或 JAVA 进行编程。
博客内容应该包括:
1、代码规范
在主函数中我们选定了一个4*4的矩阵,并将矩阵中邻居状态进行初始化,然后引用methods类中的三个方法进行变换。
Methods类存放三个方法:
(1)check方法,用来检测存放着所有邻居状态的二维矩阵的所有位置,并用point数组,记录对应位置下一轮的状态,用代表1下一代死,2下一代继续活,3下一代复活;
(2)getNext方法,用来将二维矩阵存储的邻居状态,根据point数组更新到下一代的状态,并将矩阵返回。
(3)printLifeMap方法,用来将二维矩阵中的所有邻居,按照图示的状态打印出来。
2、程序的总体设计(附图说明模块之间的关系)
3、程序结对编程过程(附图)及功能实现情况(附代码和图)
经过前期讨论后,使用屏幕共享协作编写如下图所示的代码,共同解决代码开发中的问题。代码协作编写过程如下所示:
在完成实验代码的编写调试后,本组成员协作在GitHub的原仓库托管代码。在托管代码时发现并解决乱码情况。具体过程如下图所示:
实验的运行结果如下所示
初始状态随机产生,输入0继续显示生命游戏的下一状态,黑色圆点代表细胞存活,白色代表细胞死亡,表格全部转为白色游戏结束。输入其他数字则退出游戏。
4、项目github地址(附图)
本次结对编程实验的源仓库地址为https://github.com/ziyanxingchen/Life-of-Game/tree/master/src/Game,我的GitHub仓库地址为https://github.com/Dxsy7/Life-of-Game。
5、实验总结
通过小组成员的讨论与互动共同完成本次实验,功能理解,编码规范、编程过程,代码托管等过程由两人共同完成。相较于独立编程,结对编程锻炼了团队协作能力,共同思考解决问题。
原文地址:https://www.cnblogs.com/Dxsy/p/12591038.html