代码之家  ›  专栏  ›  技术社区  ›  Jeremy French

如果你的结对项目,你还需要同行评审吗?

  •  2
  • Jeremy French  · 技术社区  · 17 年前

    我认为一般来说,同行评审是开发过程中非常好的一部分,他们经常捕捉或质疑代码最初编写时不明显的东西,让你更有自我意识,这样你就可以更好地格式化、添加注释等。

    我问,因为结对编程开始在我工作的地方发生,通常这被视为同行评审的替代品。我不太确定,但我认为开发人员花在结对编程和同行评审上的时间可能会损害生产力。

    similar question 不久前,但侧重点不同,没有明确的共识

    5 回复  |  直到 9 年前
        1
  •  7
  •   David Segonds    17 年前

    这取决于。

    在我看来,同行评审的目标不仅是直接发现编写的代码的缺陷,而且要确保代码也能与现有的代码库很好地协同工作。有时,你可能想让你正在编写的代码的专家参与进来,但他可能不是这对专家中的一员。

    例如,如果你编写了应用程序的3D图形部分,你可能需要让OpenGL专家对其进行审查。

    因此,根据具体情况,你可能需要第三双眼睛来看待你的问题。这个人甚至可能不在同一地点(在另一个时区或其他地方)。

    另外,当你配对时,你可能会有相似的想法。因此,另一种观点可能会让你看到你错过的东西。

    如果我的开发人员配对编码,如果他们不是这部分代码的100%专家,我仍然会鼓励他们对代码进行审查。

        2
  •  3
  •   tehvan    17 年前

    应该

        3
  •  3
  •   Ashutosh Singh-MVP SharePoint    17 年前

    我认为同行评审仍然很重要,因为在编程时,这两种情况下涉及的思维方式都有很大的不同。正常的思维方式并不重要,而进行同行评审时,涉及的思维模式是批判性分析。这就像由开发它的同一开发人员完成手动测试不如由测试人员完成一样

        4
  •  1
  •   Henryk Konsek    17 年前

    配对切换

    我认为,只需要对系统的关键点进行单独的专家审查。

        5
  •  0
  •   Cam Wolff    17 年前

    Paring是同行评审。或者正如XP所说,如果某件事很好,那就把它发挥到极致。如果同行评审很好,那就持续进行,即结对编程。

    当配对编程正确完成并且配对频繁轮换时,您将完成对所有开发代码的持续同行评审。更好的是,在设计、测试和编写代码时对其进行审查(是的,先编写测试,也称为测试驱动开发),而不是在编写代码之后,而且修复成本更高。

    提高了质量 :两个活跃的程序员在同一张故事卡上工作,可以完成缺陷较少的卡片

    提高生产率 :在解决问题时,如果没有完全阻塞,一对货币不太可能减速。此外,当你和伴侣一起工作时,更难通过电子邮件或网络度假。…你不想让搭档失望。当两人一组工作时,您将通过更简洁的设计和更少的代码行来解决问题

    消除知识孤岛

    技能转移: 旋转对在一起工作时互相教授新技能(工程和领域)。每个人的团队水平都会提高,知识也会在团队中传播。

    团队自选: 团队学习彼此的技能,并迅速淘汰表现不佳的人。

    推荐文章