我喜欢XP(极限编程),尤其是在同一屏幕上有2个程序员的部分,因为通常只有您解释自己在做什么,而结对编程会迫使您解释自己在做什么,这样才能更快地找到问题的解决方案在做。
在过去的10年左右的时间里,XP的工作方式似乎已经过时,倾向于使用工作方法:敏捷和/或看板。为什么?因为XP在我看来是一种很好的工作方式,并且与编程有关,而敏捷和看板则与过程有关。
我喜欢XP(极限编程),尤其是在同一屏幕上有2个程序员的部分,因为通常只有您解释自己在做什么,而结对编程会迫使您解释自己在做什么,这样才能更快地找到问题的解决方案在做。
在过去的10年左右的时间里,XP的工作方式似乎已经过时,倾向于使用工作方法:敏捷和/或看板。为什么?因为XP在我看来是一种很好的工作方式,并且与编程有关,而敏捷和看板则与过程有关。
Answers:
与整个领域的发展有关的样式,方法和思维方式有很多,每个事物都有自己的闪亮名称。
敏捷只是一种思维方式,它摆脱了通常的静态编程模型(如瀑布式),它的主要目标是实现更灵活的开发以及(最终)更好的软件和满意的客户。在敏捷之下,有许多不同的模型,例如Scrum,看板,XP。
特别是看板最初不是来自软件开发,而是起源于汽车制造(我记得丰田公司将其介绍给汽车制造商,一些软件开发商采用并扩展了它)
结对编程,代码审查等只是工具-无论使用哪种方法,您都可以(并且应该)在项目进行期间始终这样做。仅仅是这些东西比敏捷更自然。
XP或多或少地引入了这些东西(或者至少给它们起了一个闪亮的名字),随后的所有东西都采用了XP,因为它的工作原理很好。
极限编程与开发机制有关,而敏捷与SDLC(软件开发生命周期)有关。
您再也没有听说过“极限编程”的主要原因是,使用术语“极限”作为肯定形容词是90年代到00年代早期的东西,现在被认为是老套。它主要只是营销的受害者。这就是为什么您几乎只听到它被称为“ XP”的原因,甚至在口头上也是如此。
我对结对编程有一些想法。
对我来说,这是您遇到困难时要做的事情。在那个时候,它可能非常有效,它可以使您摆脱困境。但是,立体声类型程序员不喜欢偶尔做的事也很累人,也是一种工作方式。
如果您正在挖洞,很少有人会介意从同事那里获得帮助。但是,一旦涉及创造力,人们就会倾向于以自己的方式而不是别人的方式做事。因此,紧张总是会接近的,除非一个人不在乎一种方式,或者一个人的角色显然只是在暗示。
我工作的地方对编程尚未正式化,但我们确实有专门的会议,通常简短。不会像“嘿,同事,一些极限编程怎么样?” 它通常以“您可以看一下我的屏幕吗?”开头。并为他们拉起椅子。
因此,我不认为结对编程是行之有效的或不那么流行的工具,它只是您不经常使用的那些工具之一,因为它的成本很高,而主要不是因为您有两个有偿工作的人在做一件事情。