结对编程简介

抱歉抱歉。猫咪在建立圈子后一直特别忙,来不及写东西。今天终于空闲了一些,可以写点东西上来啦。结对编程是敏捷开发的重要实践之一。但是一般情况下都是在敏捷开发书里略微提了一下,就没了。纯粹写如何结对编程的书猫咪就知道一本《结对编程技术》。虽然很薄,但是写得很不错,大家可以看看。

结对编程,指的是这样一种程序设计实践:两名程序员并肩工作在同一台计算机前,共同探讨设计方案、共同设计算法、共同编写程序代码、共同完成各种测试。在这两个人中,被称为“驾驶员”的那个人负责打字或写出设计方案,被称为“领航员”的另一个负责其他工作,包括随时观察驾驶员的工作情况,发现并纠正其操作性和策略性失误。操作性失误包括各种语法错误、打字错误、用错了函数,等等。策略性失误包括驾驶员偏离了正确方向--即他正在编写的代码不能让这两位搭档到达预定目标--的各种情况。领航员扮演着战略思想家的角色。我们都曾有过走错路的经历,但如果能够有一位领航员问我们一个简单的问题--“你能解释一下你为什么这么做吗?”,我们大都能够及时回到正确的路线上来。领航员对问题有着更为客观的视角和对事态发展方向有更全面的思考。另一件大好事是驾驶员和领航员能够随时交流彼此的看法。优秀结对程序员之间的交流是非常活跃的,驾驶员和领航员至少每隔45-60秒就会交流一次--有时只是一句简单的“啊?”定期交换驾驶员和领航员的角色也是非常重要的。

以上摘自《结对编程技术》第一章。

猫咪希望大家能在此把自己对结对编程的看法、尝试结对编程的经历和对结对编程的疑惑都写出来,大家讨论。看能否在国内推广,以提高大家的编程快乐,而不是每天看着乱七八糟的代码发愁。

你可能感兴趣的:(编程,敏捷开发,XP,Google,软件测试)