0

我正在与一位招聘人员讨论使用配对编程的机会。

对我来说,两个高级开发人员一起工作有些担心,因为我希望我会在另一个工作的时候阅读。

但是,当我与这位招聘人员交谈时,我想到了一种配对编程可能有用的方式,如果有一个编辑器允许两个人同时对同一个文件进行更改,那么,一个人可以做文件中的注释,因为其他人正在努力实现该功能。这些评论可能有助于解释设计该功能时的思维模式是什么,因为如果两个高级开发人员正在开发某些功能,那么它应该是一个足够复杂的问题,需要进一步解释。

我不知道有任何编辑器允许这样做,因为它可能必须是基于网络的,才能同时查看和修改相同的问题。

这样的东西有用吗?

这样的工具还有什么其他用途我会错过?

我不在乎讨论配对编程是否是一个好主意,我有自己的看法,但是这个概念对我来说很有趣。

4

10 回答 10

12

在我看来,让 2 个人同时处理同一文件的不同方面似乎完全避免了结对编程的全部意义。据我了解,在结对编程中,实际上是指在任何给定时间只有一个人在进行修改。另一个人应该在同一个屏幕上,观察新代码是否有任何错误,提出更好的方法来实现有问题的代码,并提供第二个想法来反弹想法以实现更有效的实现。所以不,我认为它在这种情况下没有用。

于 2009-09-16T16:30:25.820 回答
6

对于喜欢这些东西的人,有一个有趣的编辑器叫做SubEthaEdit

它允许您查看谁在处理文档,以自己的颜色查看他们的编辑区域,跟踪谁对文件进行了更改,等等……

替代文字
(来源:codingmonkeys.de

于 2009-09-16T16:24:30.293 回答
2

这样的协作编辑器已经存在 - Gobby是我用过的,但还有一些其他的。

上学期我们用它来校对我们的报告——这是一个很好的工具,尽管如果每个人都试图同时编辑同一个地方,可能会有点混乱。

它会起作用吗?也许。它确实要求他们保持严格的职责分工,以保持配对编程所带来的好处——当只有一个键盘时,执行这一点会更容易一些。讨论实现细节也可能有点困难——当你有一块白板并且可以面对面交谈时,有些事情会更容易解释。

另一方面,使用协作编辑器使练习成为可能,而不必将两个人聚集在同一个房间里。执行此操作时,这两个程序员甚至可以坐在世界的不同地方。

于 2009-09-16T16:27:07.853 回答
2

Mozilla 创建了 BeSpin,如果我记得那正是 https://bespin.mozilla.com/

于 2009-09-16T16:29:39.543 回答
2

我同意 Kylotan 最初关于同一文件的不同方面工作的任何大约 2 人都在避免为什么会有结对编程。我对结对编程的理解是,一起做出选择,当代码中的一种类型达成一致时,另一种则充当第二双眼睛,以确保它是被理解的。因此,不仅仅是一个人输入他们想要的任何内容,而是将已同意的内容放入并获得该同意可以解决某人最初想法中的许多细节,这可能最终成为一个很好的解决方案,这要归功于一些反馈。

有时我们在计算机上使用了 2 个键盘和 2 个鼠标,但通常只拥有一个并轮流输入内容会更容易。如果我们发现一些繁重的工作,我们可能会分道扬镳,让每个人做不难或不棘手的部分,只是无聊且几乎单调。

于 2009-09-16T16:36:36.163 回答
1

结对编程是关于一个有键盘和鼠标,另一个提供反馈。您可以切换这些角色或将键盘分配给一个角色,将鼠标分配给另一个角色,但是您将始终必须处理/考虑同一段代码才能进行结对编程。

我看不出这样的编辑如何帮助解决这个问题,但我可以看到它会如何阻碍。

于 2009-09-16T16:33:23.920 回答
1

这样的工具不必是基于网络的。这里有几个不是:

  • 协作式文本编辑器Gobby
  • XPairtise , 一个用于 Eclipse 的分布式结对编程插件
  • Jupiter,Eclipse IDE 的代码审查插件工具(不是真正的结对编程)

但实际上,如果人们并置(这是结对编程的最佳配置),我并没有真正看到使用这些工具的意义。对于地理上分散的人来说,他们可能会有所帮助,但永远不会像坐在某人旁边那样好。

于 2009-09-16T16:33:36.650 回答
1

您概述的情况我将描述为“同时编辑”,而不是Pair Programming。正如其他人所指出的那样,两者之间存在很大差异,并且有几种旨在允许同时编辑的工具。

于 2009-09-16T16:54:52.113 回答
0

这可能很有用,但大多数时候它与结对编程无关(我也对此持怀疑态度)。

也许对于分布式结对编程的情况,它可能会有所帮助——不是真正编辑同一个文件,而是让一个程序员编辑文件,而其他程序员在屏幕上评论更改。对于进行编程并仍提供实时通信的人来说,这不那么令人不安。

我或多或少的拙见。

于 2009-09-16T16:26:57.057 回答
0

Etherpad是我过去使用过的在线协作文本编辑器。在我的经验中,需要协作文本编辑解决方案的问题很少见。

于 2009-09-16T16:44:46.553 回答