Page 1 of 1

实现此目的最有效的两种方法是编写

Posted: Wed Dec 11, 2024 6:54 am
by rumiseoexpate5
有用的 PR 描述和注释 PR。有用的 PR 描述至少应该回答以下问题:

这个 PR 起什么作用?

我们为什么要这么做?

为了实现该目标,您对代码做了哪些高级更改?

审阅者在查看此代码时还应该注意哪些信息?

除了为 PR 描述添加上下文之外,还可以使用源代码控制的注释机制来吸引人们对某些代码行的注意。使用这种方法来指出设计决策,尤其是您选择累积技术债务来发布功能的任何方面。

使 PR 的大小易于审查:在 PR 达到一定大小时,沟通背景 埃及 whatsapp 号码数据 5 万 的效果会逐渐减弱。大规模 PR 很难建立心理模型,而且几乎不可能彻底审查。但也有一些例外,例如当您删除不再使用的功能的代码时。虽然没有确切的行数来衡量一个好的 PR 大小,但有一个有用的启发式方法:垂直切片。

垂直切片是向用户提供有意义功能的最小工作单元。“对用户有意义的功能”可能意味着新功能、错误修复或可用性改进。例如,如果您正在编写 Web 应用,则可以按几种方式分解功能的实现。最易于审查的方法是提供完整的端到端端点实现。垂直切片有几个重要特征:

Image

它们不包含任何未在同一 PR 上使用的代码,除非该代码旨在成为其他人使用的公共 API。仅由测试执行的代码设计很难推理:无法判断代码设计是否与用例相匹配,因为没有具体的用例。

它们会遍历整个技术堆栈。不引入未在同一个 PR 中使用过的新代码的自然结果是,唯一需要“模拟”的依赖项是您的外部依赖项。

自动化挑剔:收集上下文时遇到的障碍之一是必须留下挑剔。挑剔是一些小而挑剔的评论,之所以这样命名,是因为人们倾向于在它们前面加上“nit:”。留下挑剔会破坏代码审查的流程,并使在更高抽象层次上思考代码变得更加困难。


通过尽可能多地自动化解决缺陷,您可以让每个人的生活更轻松。大多数缺陷往往基于样式,可以使用linter实现自动化;如果您选择的语言具有某种自动格式化程序,那就更好了。另一个常见的缺陷是要求测试覆盖率。一般来说,引入的新代码应该附带测试,或者解释为什么 PR 描述中没有任何测试。缺陷应该是例外,而不是规则。