为什么要结对编程?
每人在各自独立设计、实现软件的过程中不免要犯这样那样的错误。在结对编程中,因为有随时的复审和交流,程序各方面的质量取决于一对程序员中各方面水平较高的那一位。这样,程序中的错误就会少得多,程序的初始质量会高很多,这样会省下很多以后修改、测试的时间。具体地说,结对编程有如下的好处:
(1)在开发层次,结对编程能提供更好的设计质量和代码质量,两人合作能有更强的解决问题的能力。
(2)对开发人员自身来说,结对工作能带来更多的信心,高质量的产出能带来更高的满足感。
(3)在心理上, 当有另一个人在你身边和你紧密配合, 做同样一件事情的时候, 你不好意思开小差, 也不好意思糊弄。
(4)在企业管理层次上,结对能更有效地交流,相互学习和传递经验,能更好地处理人员流动。因为一个人的知识已经被其他人共享。
总之,如果运用得当,结对编程能得到更高的投入产出比(Return of Investment)。
结对编程中的角色
结对编程中有两个角色:
(a)驾驶员(Driver)是控制键盘输入的人。
(b)领航员(Navigator)起到领航、提醒的作用。
这两个角色是可以互换的。和现实生活中的例子类似,一个人负责具体的执行(驾驶,用键盘编辑程序等),另一人负责导航、检查、掩护等。
引用自《结对编程和两人合作》
我的感想
- 结对学习不是为了让我们某个人偷懒的,而是小组内的成员一同进步的学习过程,所以首先我们应该正确认识它,明确自己的角色,摆正自己的学习态度
- 结对学习相比于个人的学习有很多优点,比如可以互相查漏补缺,增进小组成员的友谊,培养了自主学习能力
- 这种方式可以很好地提高我们的学习积极性,有效的监督我们的学习过程
我们应如何适应结对学习
- 积极主动参与到学习和讨论中去,提高自己的动手能力
- 小组成员要配合默契,互相帮助,共同进步
- 不明白的地方通过组内的讨论解决