Pair project 的小结有图有真相(group member: Fei Tian, Gaoyao Xiao)

Pair project 的小结有图有真相(group member: Fei Tian, Gaoyao Xiao),第1张

概述到今天为止,我和Fei Tian 同学的pair project—3D中国象棋基本完成了,整个project工作量还是蛮大的,在这个过程中我也见识到了编程高手是怎样写code的。 接下来说说我们的pair project的过程吧。 我们第一步是确定编程工具,虽然邹欣老师很推荐silverlight,但是经过我们调查,silverlight的参考资料似乎比较少,而wpf的则很多,另外wpf功能也比s

到今天为止,我和Fei Tian 同学的pair project—3D中国象棋基本完成了,整个project工作量还是蛮大的,在这个过程中我也见识到了编程高手是怎样写code的。


接下来说说我们的pair project的过程吧。

我们第一步是确定编程工具,虽然邹欣老师很推荐silverlight,但是经过我们调查,silverlight的参考资料似乎比较少,而wpf的则很多,另外wpf功能也比silverlight强大,为了快速高效的学会一门工具,我们选择wpf


第二步就是确定最终的实现目标了,我们对3D象棋的期望是,加入适量的3D效果,改变一些游戏规则并保证游戏仍有较高的可玩性(毕竟如果不好玩,3D做的再炫、创意再多也木有用、、)。经过讨论,根据我们在象棋实战的过程中遇到的一些情况,按照邹欣老师的要求,我们决定设计一个两层的棋盘,第一层是正常的中国象棋棋盘,第二层是扩展的。具体是,在第一层也就是正常棋盘中,当棋子A走到的左右两条边界线时,如果被对方的棋子逼得走投无路,就可以选择躲避到第二层,正常棋盘中的棋子不允许吃掉躲在第二层的棋子,当形势改变后,如果棋子A原位置为空,棋子A可以返回原来的位置。这样做的效果是,给被逼到边界的棋子提供了一条生路,但同时也有风险,如果一个“车”躲下去了,然后对方用一个棋子把“车”跳下去的那个点堵住,那么那个“车”就长眠在第二层了。通过这样一种功能,给正常的中国象棋增加了一些趣味性。具体的可以看看文章顶部的截图,途中左边界线上的棋子全都躲避到第二层去了(上下边界线上的点除四个顶点外,不能躲避)。确定了这个功能后,Fei同学觉得这个AI也很有意思,因此在实现该功能后又追加了“人机对战”功能!


第三步就是结对编程了,我觉得结对编程既有优点,也有缺点。优点是大家可以讨论怎样解决BUG,讨论可靠的方案从而减少BUG的出现,另外两个人一起也更有动力,不那么容易感觉无聊。缺点也很明显,比如可能一个人的思考会受到干扰之类的,而且如果两个人编程水平、风格相差较大,在pair programming时必然不少于一个人会很郁闷吧。Fei是主力,这是毋庸置疑的,在实现“人机对战”功能中,Fei从头学习搜索策略算法,然后编程实现,写出来的程序很清晰,注释简明扼要,相比之下我的代码则导致了较多的BUG,囧、、、


第四步就是消灭BUG吧,我们的3D象棋还有一些小问题,但我们相信最终会完成一个终极完美版~~

 

最后贴上照片一张,左边是我,右边是Fei~~

总结

以上是内存溢出为你收集整理的Pair project 的小结有图有真相(group member: Fei Tian, Gaoyao Xiao)全部内容,希望文章能够帮你解决Pair project 的小结有图有真相(group member: Fei Tian, Gaoyao Xiao)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1076005.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存