首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >双编程是否消除了极限编程(XP)项目中对代码评审的需求?

双编程是否消除了极限编程(XP)项目中对代码评审的需求?
EN

Software Engineering用户
提问于 2014-12-04 21:24:41
回答 1查看 3.5K关注 0票数 16

在一个极端的编程项目中,程序员大部分时间都是一对编程的。

由于这些对也是旋转的,也就是说,将程序与不同的人配对,并且有一种集体所有权的感觉,所以源代码经常被检查和更新。

既然如此,是否需要对代码进行审查?我的意思是,停止编程,实际上只做代码评审。

EN

回答 1

Software Engineering用户

回答已采纳

发布于 2014-12-04 21:44:02

极限编程的关键资源之一是Ward的Wiki,又名波特兰模式库,也就是C2.com。在这里,许多人研究了各种方法,并在使用这些方法时对它们进行了记录。

在这个wiki中,有一个页面:极限编程代码评审有很多贡献者,包括Ron和Kent。

对此,他们说:

许多大型流程专家认为代码评审很重要。它们的目的是确保符合标准,更重要的是,确保代码清晰、高效、工作并具有QWAN。他们还打算帮助向团队的其他成员传播有关代码的知识。ExtremeProgramming要求所有的开发都由两个工程师共同完成。代码实际上是在动态地被审查的,在相当大的程度上。这确保了在任何时候都有一个以上的人对代码有很好的了解。ExtremeProgramming要求所有对象都有UnitTests。这些方法确保对象工作,并继续以修改后的方式工作。有些语言是反射性的。在这些语言中,UnitTests可以直接检查重要标准的一致性。(例如,对象必须同时实现#=和#散列,或者两者都不实现。)ExtremeProgramming practices,这意味着需要注意的对象将被许多开发人员浏览。这往往会给那些产生不符合标准的代码带来压力。当开发人员发现偏差时,会鼓励/期望他们将代码带入一致。这还确保了代码知识在创建代码的最初对程序员之外的传播。因此,ExtremeProgramming项目不需要明确的评审。把它们从你的方法中删除。

其他人也对这个话题进行了更多的讨论。

关键是,通过测试、协作所有权和对编程的结合,这些都解决了代码评审通常应该做的目标,如:

  • 分散对正在做的事情的了解
  • 代码上的第二组(或更多)眼球,以确保代码符合标准
  • 验证代码的正确功能

这些都是通过对编程和极端编程中的自动测试来持续完成的,因此没有必要使用显式的费根检验

相关阅读:

  • 对编程与代码评审在编码恐怖。
  • 代码评审被认为是有害的 at ExtremeProgramming.org
票数 15
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/264614

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档