在面对敏捷开发这一话题时,我们内心往往很复杂,即激动又忐忑,我们感觉通过敏捷开发会给我们带来很大的价值,但深入一想又感觉会有很多问题。
结对编程是XP极限编程的关键实践之一,也是最备受争议的,我们往往对其既肯定又否定,我们感觉它会给我们带来效率上的提高,也会感觉它会降低我们的效率。
本文因javaEye论坛的一篇帖子所起,表述了我对结队编程的一些看法
结队编程是XP极限编成的一个关键实践,如果把结对编程放到整个XP里面会更容易体现出它的价值,所以我觉得分析结对编程的一个整体思路是:
1、适用场景:
XP的适用性在哪里,什么样的项目中适合采用XP,在这样的项目中XP可以起到什么作用。
如果离开了适用场景,XP的适用性都要重新考虑,所以就更不用谈结对编程了;
2、实施条件:
从理论上我们面对的项目可以从XP那里得到很大的价值,但实际中我们的团队具不具备实施XP的条件,即并不是什么样的团队都可以采用XP,特别是结对编程;
3、结对编程的位置和价值:
结队编程在整个XP中的地位,它和其他哪些关键实践有着相辅相成的关系,它可以应对项目实施的哪些