结对和结队的区别 结对是什么意思


定义结对编程最早源于极限编程XP中 。

每一行代码的编写都是由两个人在同一台电脑前完成的 。结对编程提高了软件质量,却并不会影响交付时间 。这是反直觉的,但是2个人在同一台电脑前工作,可以产出与2个人单独工作时同样多的功能,同时质量更高 。而更好的代码质量和可读性可以节省项目后期的时间 。

结对编程的最好方式是在电脑屏幕前并排就坐 。不断地滑动键盘和鼠标 。一个人敲键盘并从战术层面来思考当前编写的函数,同时另一个人从战略层面思考该函数如何适应到类中 。这种做法需要一些时间来习惯,所以不用一开始感觉到的不适应 。

除了编码,其他工作也可以结对完成,比如测试、分析、研究等等 。

好处【结对和结队的区别 结对是什么意思】结对的好处在于可以自动地完成代码评审,从其他人那里学习技巧、技术、领域知识,甚至是良好的习惯 。两个人在共同工作时可以碰撞出更好的想法,更迅速的解决掉问题 。

还有一点,通过结对编程一种很好的传播知识的方式,降低团队核心人员的压力,降低项目的整体风险 。

Reference

  • 《解析极限编程 (Extreme Programming)》, by Kent Beck
  • 想要进一步了解敏捷工程实践,关注Certified Scrum Developer国际认证课程

    推荐阅读