首页 > 代码库 > 结对编程——黄金点游戏
结对编程——黄金点游戏
结对编程项目—黄金点游戏
一.项目描述:黄金点游戏是一个数字小游戏,其游戏规则是:
N个同学(N通常大于10),每人写一个0-100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值。提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分。玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动。
现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下:
1、本作业属于结对编程项目,必须由二人共同完成,并分别将本次作业过程发到博客,同时将本次作业源代码提交到coding系统;
2、如果可能的话尽量以C/S或B/S方式实现,即利用服务器接收和处理所有玩家提交的数字,并将结果反馈给各玩家,玩家可以通过客户端提交数字;
3、如果采用单机方式实现的话,需要为用户提供便利的输入界面;
4、该游戏每次至少可以运行10轮以上,并能够保留各轮比赛结果。
需要提交的材料
1、项目源代码,以二人名义提交至coding系统中;
2、本次过程总结,每人独立完成,内容应至少包括如下部分:
(1) 首先,介绍自己的结对人员,并留下队员的博客链接(以便于老师对照看你们的作业吧),两人工作中的照片,要看到脸,并且要专注工作;
(2) 对方性格、工作态度评价;
(3) 俩人各自所做工作?对方编程习惯总结(是否遵照代码规范、是否关注算法效率、是否做了代码复审、界面设计是否关注美观实用等等);
(4) 本次编程过程的体会和总结,要有感情,切忌官话套话……
二, 分析
这次结对编程中,我的队友是石欣伟,他是一个性格比较内向的人,平时也不怎么说话,只专注于钻研算法代码,因此,他的编程能力应该算是比较强的了。在这次作业中,他认真负责,仔细,严谨,争取把最完美的作业提交。
在拿到题目后,经过分析,我们决定采用C#语言编写这个作业,因为C#可以写出不同的框,更加符合作业的需求。(当然了,其他的语言也可以,但对这个语言比较熟悉,所以才用)。在编写的过程中,我有不懂得时,他总会给我耐心讲解,使我获益匪浅。同时,他与也让我独立思考,对于我的思路进行参考,最终选择适合可行的方案。对于他的编程习惯,他需要做的就是算法的效率,怎么快怎么来。虽然代码的量会多点,但效率非常明显,因此,这也是他编程的一个优点,值得我们学习。
三心得体会
通过这次结对编程,让我对于结对编程有了新的认识,以前我认为那就是两个人坐在一起,对于同一个项目进行分工完成,但经过这次实践,发现不仅仅是那样,在这个过程中,首先需要确定的是,我们对于这个项目各自的看法,其次是通过分析讨论,确定出一份两个人都认同的可行性方案。再者,就是在完成项目的过程中,需要不断的进行讨论,把遇到的问题逐个解决,虽然,想法是把这个项目做的最完美,但由于自身的硬件实力不行,导致做出来的与预想的有差异。
在做的过程中,我们遇到了很多的问题,首先就是界面的显示问题,单单把界面显示出来还是比较简单的,但当我们把所有不同的界面逐个显示出来并组合在一起后,发现总会有一些界面被其他的所遮挡,无论怎么样修改都不能解决,这也让我们很头痛。其次就是在程序运行时,出现了后台程序控制主线程序的问题以及不同进程之间的进度等问题,由于这些我不太懂,对于编写服务器没有学习,所以,这些问题的解决只能依靠我的队友解决,这里,我就不再叙述,他的博文里会说明。但他在解决这些问题时的那认真劲儿以及对于对待问题的态度,那真的是很认真很认真,被他的认真劲儿深深的折服了。
总之,通过这次结对编程,我不仅仅是完成了作业,更是对于自身的问题有了认识,让我学习到了很多,同时,也结交了一个优秀的编程者,倍感高兴。
最后,附上我和我伟哥的工作照,如下:左边是我,右边是我伟哥(石欣伟)
我伟哥(石欣伟)的博客地址:http://www.cnblogs.com/baixiaochun/
结对编程——黄金点游戏