[占位符]

创建代码审查文化,第1部分:组织和作者

代码审查是最有效的工具之一,我们有工程师来维护我们的代码质量。它提供了一个平台,让我们沟通我们的最佳实践涉及到的,因为他们在我们的方式,将有直接的实际用途使用技术,并有机会教。 

代码审查,以确保一个强有力的文化,我们让所有的代码审查的好处。 什么是代码审查文化? 好了,让我们开始用一个简单的问题:什么是文化?我喜欢韦氏的定义是:“在一套共同的态度,价值观,目标和实践表征的机构或组织。”这让我们打破进一步下降:

  • 当我们谈论 态度,我们谈论的观点和意见共享点。这一点很重要,因为有一个共同的态度和目标,关于代码审查的重要性,保证工程师每次都会得到一个比较一致的代码审查的经验。

  • 比态度更重要。他们共同的什么是重要的排名,无论是在代码和代码审查。如果态度的意见,价值观是告知这些看法的信念。拥有一套共享编写的代码可以在介导技术辩论关于极大的帮助值。通常情况下,在技术情况的意见的巨大分歧下来吃什么工程师认为是有价值的代码的差异。

  • 目标 都在代码审查的目的共享协议。尽管态度听写 为什么 我们正在努力实现的目标,目标一组共享告诉我们 什么

  • 而当我们谈论 做法,我们谈论的是一个共享的一组动作是由代码作者和审稿代码执行。 

那所以现在我们有一个共同的一套定义,我们如何使用它们来创建一个强大的代码审查文化?让我们来看看从工程组织,代码作者和审稿代码的角度来看这个问题。 


组织

什么软件挣钱快 而且只用微信登 无论我们想文化发生与否。这只是制作的性质人类一起做事。在某些时候,共享套的价值观,目标,态度和做法 出现。工程企业面临着THEREFORE两种选择:做一些事情来试图影响文化(即是故意的吧),或坐视不管发生什么事,发生了。的许多方面,我们可以故意是我们的文化,我想谈谈三: 通信文化, 建立专家社区评审准则培训.

通信文化 什么软件挣钱快 而且只用微信登 

还可以组织推动强劲代码审查文化 建立专家社区。两种类型的专家往往是在代码审查有所帮助:语言专家和问题领域的专家。

  • 语言专家擅长的编程语言和业主/或生态系统。这些工程师是负责督导工程组织使用语言的特别相关的技术和ITS,以及提供技术咨询,在深深的代码审查。他们应该能够就如何使代码更地道的建议,并引导最佳实践和准则语言的一个组织使用。

  • 工程师是谁在特别宽的问题领域有经验的问题领域的专家,如并发编程。它们往往是不太可能转向使用模式的组织,但作为专家应该格外抢手当与棘手的问题方面处理。建立专家组成的社区是不够的,企业必须有一个清晰的路径,成为专家。有专家一个不变的阵容可能会导致把关行为,可令人沮丧的个人贡献者(ICS)的业主希望主话题,因为他们的职业发展的一部分。

最后,工程组织应该 评审准则培训。代码审查是是一个选择,但不同的,阅读和编​​写代码的技能。训练的方法将你在什么样的公司会有所不同。可能有些球队喜欢配对有经验的评论家代码带一个谁的新的实践,他们在那里常会在一起的代码审查。然而,单对单辅导和配对并不总是很好地扩展训练的工程师;在这些情况下,您可以运行车间和实验室,工程师可以潜入的新课题。这些会议的重点应该是建立一种方法审查代码以较少的经验丰富的审评。 

代码作者

什么软件挣钱快 而且只用微信登 什么软件挣钱快 而且只用微信登

还有我们可以作为有用的代码作者的几个方面: 

  • 通信上下文前面

  • 使拉入请求(PR)管理的大小

  • 杠杆以减少线的自动化噪音量审稿已去了

  • 知道什么时候是一个更好的主意,采取审查离线 不是继续它的PR系统.

通信上下文前面: 审查代码中最难的部分之一就是收集背景下有必要了解为什么代码是现在这个样子。可能看起来像一个不必要的复杂完全合理的可能是给定一组设计约束。此摩擦最小化,它有助于尽可能多的上下文尽可能代码评前面进行通信。

什么软件挣钱快 而且只用微信登

  • 公关是什么呢?

  • 为什么我们要这么做?

  • 高水平你做什么更改代码来实现这一目标?

  • 什么软件挣钱快 而且只用微信登

除了添加上下文PR的描述,用你的源代码管理的评论机制,提请注意某些代码行。用这样的一种方式来指出设计决策,特别是任何你所选择累积债务船舶技术特征。  

容易使PR的复审尺寸: 在某些尺寸的PR,通信上下文已经收益递减。海量PRS是很难做出的心智模式,并不能审查几乎彻底。也有少数例外,如当你“重新删除该代码的功能不再使用。而有一个良好的公关大小没有确切的行数,有一个有用的启发:在垂直切片工作。

A 垂直切片 是工作的最小单位的船舶,但用户有意义的功能。 “对用户有意义的功能”可能意味着一个新功能,bug修复,或可用性的改进。举例来说,如果你正在写一个web应用程序,你可以分解的功能的实现在几个方面。最审查的办法就是推出一款完整的,端到端的终端执行的端点。有一对夫妇的垂直切片的重要特点: 

  • 他们不包含未在同PR使用的任何代码,除非该代码旨在通过别人消费的公共API。 这代码的设计是由测试只行使很难原因有关:这是不可能告诉我们,如果代码中使用的情况下设计相匹配,没有具体的因为使用情况。

  • 他们使在整个技术堆栈的往返。不引入在同PR这是唯一的依赖应该有被“嘲笑”不消耗新代码的自然结果是你的外部依赖性。

自动化尼特: 其中的东西,可推动在拾荒上下文的方式是具有离开尼特。尼特是小的,挑剔的评论,命名,是因为这种倾向与前缀他们的“尼特:”留下了NIT可以打破审查代码的流程,使得它很难去思考代码在更高级别的抽象。


什么软件挣钱快 而且只用微信登 短绒;如果您选择的语言具有某种自动格式化的,甚至更好。另一种常见的NIT是要求测试覆盖率。一般来说,这是推出应该有测试新代码,或为什么有在PR的描述不是任何解释。 NIT应该是例外,而不是规则。

知道何时脱机: 什么软件挣钱快 而且只用微信登

离线可能意味着几件事情,这取决于您的企业如何工作,但大致来说它意味着你的公司的首选同步,面对面面对面沟通的方法。为企业当作者和审稿位于同一位置,这可能意味着在一个房间一个小时在一起开会。远程公司,设立这可能意味着远程视频聊天。最重要的事情是,你得到其他人的语调和身体语言加入讨论。

有几个原因的,你可能想要把它脱机。首先, 如果审阅埋葬你下评论,它可以帮助设定了一个配对会解决这一问题。当你“重新否则有经验的程序员,但新的语言或技术往往ESTA发生。你的第一个PRS必将为你所用,成为语法和惯用法得到了很多的意见。然而,而不是试图自己解决这些问题,一个小时的会议来解决这些配对与您的评审员可产生很大的学问。如果您的评论家是在你使用,让他们在语言方面的专家看到您的工作流程,并指导您完成某些成语的理由可以产生不仅仅是解决意见更多的了解。

什么软件挣钱快 而且只用微信登 您可能还需要使其脱机。通常有感知的对立的两种形式:

  • 第一个来自于事实,写作是真的很难英语。可能不会写你的评论者作为其主要的语言英语,而且即使他们这样做,很容易写一些东西,会被误解为过敏或居高临下。在这种情况下,把它离线将让你体验到他们的身体语言和说话的语气,在可以离开写作的空白填补。

  • 其他味道毒性。如果您审阅留下评论是在侮辱,训斥,或暗示你不是真正的工程师,不回应。截图评论,让你的经理参与。 什么软件挣钱快 而且只用微信登,它不会与技术讨论解决;这是一个人的问题,在最坏的情况小时这可能是一个问题。

使代码易于审查是一个强大的代码审查文化的重要,但它只是一半的方程。在ESTA系列的下一部分,我们将看看如何可以查看代码的方式,是彻底的并且传递同情。 

敬请关注!


创建代码审查文化,第2部分:代码评审

螺母和螺栓和Polina希拉尔特