首页 > 代码库 > 结对编程作业
结对编程作业
黄金点游戏是一个数字小游戏,其游戏规则是:
N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值。提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分。玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动。
现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下:
1、本作业属于结对编程项目,必须由二人共同完成,并分别将本次作业过程发到博客,同时将本次作业源代码提交到codeing系统;
2、如果可能的话尽量以C/S或B/S方式实现,即利用服务器接收和处理所有玩家提交的数字,并将结果反馈给各玩家,玩家可以通过客户端提交的数字;
3、如果采用单机方式实现的话,需要为用户提供便利的输入界面;
4、该游戏每次至少可以运行10轮以上,并能够保留各轮比赛结果。
5、作业总结中,驾驶员主要描述本次结对编程中领航者对代码复审做了哪些工作,提出了哪些有建设性的意见和建议。领航者对驾驶员本次工作进行总结,主要包括代码风格、编程技巧等,两人应共同总结与一人编程相比,结对编程是否真正提高了代码质量和编程效率,双方应该将本次工作过程拍若干张照片并发布到博客中。
一、结对编程成员
领航员:李泽阳 博客园地址:http://www.cnblogs.com/lizeyang510/p/5971751.html
驾驶员:李旭 上传coding.net代码连接:https://git.coding.net/lalala512/gold-point-game.git
编译使用软件:vs2013
二、编码规范
对编码规范的理解:几乎每个项目,每家公司都会定义自己的编码规范。对于程序员来说,也不喜欢改变自己的编程习惯。也许有些人会认为:遵守编码规范不能给项目带来利益,也不能让客户看到我们为此付出的努力,没有必要做这种要求。还有些人有更好的理由:编码规范会破坏创造性和程序质量。但在我看来,编码规范,在软件构件以及项目管理中,甚至是个人成长方面,都发挥着重要的作用,好的编码规范是提高我们代码质量的最有效的工具之一。
编码规范的作用:
1)提高可读性
2)促进团队合作和研发
3)统一全局,降低成本
4)能够提高个人能力
在这次结对编程中,我和我的小伙伴制定了以下规范,可能是第一次制定,会有缺陷,还请老师见谅!
相关内容 | 要求 |
变量命名方式 | 相同类型变量处于同一行,例如 int x,y,z; |
代码风格1 | 花括号“{}”不允许省略,即使只有一段代码,也要写上 |
代码风格2 | 每一行代码相对独立,使代码行与行之间简明清晰 |
代码风格3 | 函数声明、定义、调用,使用统一格式 |
代码风格4 | 注释及无用代码统一用“//”标注 |
三、任务的准备与进展过程
1.看到题目后,我们两个人详细的讨论了游戏的规则和具体的算法实现,考虑到我们能力的不足,最后确定使用c语言以单机的方式实现;
2.由本人进行创建项目、编写代码,同伴进行监测并及时发现代码的错误;
3.代码编写完成后,由同伴进行调试和测试,并讨论对代码进行修改和改进的地方,比如说缺少某些功能或者对可操作性界面的修改;
4.针对边缘数据二次测试;
5.两人总结项目。
参考图片如下:
四、个人总结和团队总结
1.个人总结: 通过此次的结对编程,认识到一个人的力量终究是有限的,团队的作用是很大的。首先,在讨论游戏规则时,一个人的理解往往不会太全面,有了和同伴的讨论,一起交流,一起说说自己的看法,这会使我们对问题认识的更深刻。然后,在编写代码的过程中,往往会留下一些看似小的错误,比如说少个分号或者少个括号,自己在编写的过程中很难有精力去一直考虑这些,导致后面复查的时候会非常困难,有了同伴在旁边每次的提醒和纠正,这大大减少了这一问题的出现,也减少了代码复审的时间。最后,同伴为了完善代码的功能还提出了一些实质性的改进方案,比如说增加了查询功能,修改了各种提示信息等等。
2.团队总结:黄金点游戏代码复杂度与项目完成度并不是很高或者很难,但通过此次合作与结对,我们真正的感受到,没有对比就没有伤害,相对于个人独立编程,结对编程不仅省时间、省资源,更使得项目完成的更好,更出色,相信这次合作会更加促进两人友谊和今后工作配合!
五、代码测试界面
结对编程作业