敏捷中的结对编程要求我们支付给单个程序员的工资翻倍。当然,使用这种方法,代码的质量要好得多,错误被发现得更早,等等,但这仍然值得花这么多钱吗?也许我们应该向少数几个测试人员支付第二个开发人员的工资(后者通常比合格的程序员便宜得多)?有没有人有过这样的比较经验?
发布于 2009-03-20 22:03:17
你怎么知道你没有配对的程序员更有效率呢?我有时会想,这对情侣就像古老的童话里的兔子和乌龟。
结对并不会让你的工作变得事与愿违。我不知道有多少次我看到开发人员花了几周的时间在一些后来被简单得多的东西取代的东西上。单独的程序员“在专区”经常做一些愚蠢的事情。当你想要的是用更少的代码产生更多的冲力时,产生太多的代码太容易了。
在后代中,当尘埃落定时,你会发现成百上千行的代码可能没有被写出来,因为有人不知道库X或技术Y。配对改善了这个问题,但没有消除它。它鼓励每个人和两个人在进入盲目的代码快感之前做更多的研究。
我希望我能有更多的配对...
发布于 2009-03-20 21:59:25
我们在公司中使用这种方法,但只在困难的任务中使用,或者当你不确定其他人已经在做的事情时,我相信效果很好。它可以让你避免墨守成规,能够在必要的时候向人们提出想法,同时仍然能够独立完成大多数简单的任务。
我也相信它比代码审查更有好处,这是我工作的地方做的另一件事。在不提供重要上下文的情况下进行代码审查时,通常很难完全知道发生了什么,此时您并不总是有时间考虑所有的输入和输出。结对编程从一开始就给了您该上下文,并允许您花更多的时间考虑可能会或可能不会导致问题的边缘情况。
发布于 2009-03-20 22:30:20
虽然我同意到目前为止关于结对编程是一件好事的大多数反应,但我将扮演魔鬼的倡导者,并认为它并不总是有意义的。
当你们结对时,你不会得到一个拥有双倍智慧的程序员。你得到了一个程序员,他是你们两个人的联盟。所以基本上,任何时候我搞砸了,而我的伴侣抓住了或者找到了更好的方法,这都是一个加分。然而,任何时候我自己写正确的代码都是浪费钱,因为不需要我的合作伙伴。
基本上,您需要评估您正在处理的代码。简单的任务通常不值得花钱让人坐下来确保你写的for循环是正确的。然而,在某些阈值下,任务足够复杂,使得结对编程的roi是合理的。
https://stackoverflow.com/questions/668158
复制相似问题