结对项目

一 题目简介
1、计算机能对棋局进行分析、判断。根据棋局状态来确定机器方的下棋行为。
2、计算机能根据棋局状态实时的判断对弈双方的胜负。
3、控制双方交替下棋。
4、友好的界面呈现。 
 
二 结对分工及过程
 结对 付吉龙(学号后四位:4073)  王琨(学号后四位:4006)

 组员各自的优缺点:

      1.付吉龙: 代码的编写和代码规范。

     2.王琨:程序的分析和程序的测试及测试代码的编写

三结对编程优缺点:

    优点:

    1.结对编程时间紧密,在一定程度上可以督促双方学习,提高效率。

   2.Coder在coding过程中会遇到一些细小的问题,而reviewer可以及时指出错误,并给予解决方案进行讨论。

   3.遇到问题时,两个人一起讨论,并补充对方没有想到的地方,是完善程序最好的方式。

   缺点:

   在编程过程中,很长时间是coder在coding的过程中想思路,大概这也是每个程序员的特点,而这个时候reviewer就会长时间遇到空档期。

四 代码地址

 https://github.com/wangkun1995/test/tree/master

五测试情况

六 心得

 这是我的第一次结对编程,总体感觉是很坑爹且痛苦。虽然是结对编程,但是代码基本是我一个人写的=0=感觉上我还是不太适应结对编程这种模式,我们前期阅读代码时是分开进行的,我总感觉我和一个人一起阅读代码时会看不下去(然而尽管是一个人阅读的,我的阅读过程还是很痛苦)。当我们结束了代码阅读开始进行讨论时,我发现队友对于代码的熟悉度还不够,但是时间不能耽误,于是我们进入了算法设计环节。原本是想由队友设计一个大体的算法,我进行补充并进行编码,但是队友很难把算法从自然语言抽象到程序步骤。于是我设计了一个基础的算法并进行编码,在这个过程中我们尝试进行二人工作交换,但是很快我发现了一个数据结构使用上的错误,指导队友又太慢了,所有只好换我上阵。当算法实现完成后,进入调试阶段,队友更是没办法插进手了(因为她虽然理解大体的算法思路但是不能完全理解思路在代码里的实现)。虽然我也尝试安排调试和一些小工作给队友,但是结果都是在队友完成前我就等不及先完成了。

posted @ 2015-05-16 13:34  wangkun111  阅读(158)  评论(7编辑  收藏  举报