重构工具:如何搜索不良代码
#javascript #教程 #重构 #书

让我们谈谈重构!

在这一系列的简短帖子中,我们将讨论可以帮助您改善代码和项目的技术和工具。

今天我们将讨论如何注意您的项目是否需要重构。

认知警报

重构的目的是使代码更可读和可维护。我们可以使用这些属性来评估项目中的代码质量。

阅读代码时,我们应该注意“认知警报”该信号问题。

认知警报是我们在阅读复杂或不清楚的代码时得到的感觉。我们应该考虑在阅读这些想法时是否出现重构:

  • 代码很难读取,或者似乎太复杂了;
  • 很难更改,更新和修改;
  • 很难为其测试或准备测试数据;
  • 很难跟踪其中发生的事情或记住所有细节。

这些感觉背后的原因可能会有所不同,稍后我们将更加仔细地调查它们。但是它们标志着问题,因此,如果我们经验他们,我们应该考虑重构。

代码气味

我们上面提到的一些问题已经以代码气味的形式形成。

Code smells是导致代码质量差的反生态。大多数与面向对象的代码有关,但许多代码普遍适用。因此,我们在阅读代码时也可以寻找它们。

有代码气味的已知解决方案。有时,它足以查看代码,找到气味并应用特定的解决方案。

指标

除了认知警报外,我们可以使用可测量的指标,例如cyclomaticcognitive complexity

阅读代码时,我们建立了它在脑海中工作的模型。该模型描述了数据发生了什么以及指令如何执行。

复杂性指标向我们展示了该模型的复杂程度。模型越复杂,读取和维护代码就越难。如果我们看到代码段的复杂性高于极限,我们可以对其进行作用并重构。

这种特性的重要特征是它们是可测量的。我们可以选择此类属性的限制,并使用代码linter自动进行检查。

衬里

ESLint这样的代码衬里包含许多开发人员的集体体验,可以帮助我们改进代码。

并非所有的林格规则都同样有用,但是我们可以选择我们认为更重要并遵循它们的规则。

使用Linters,我们可以考虑在看到错误或警告时进行重构。 ...实际上,使用Linter警告有更好的策略,我在书中详细描述了它:

我的书中的更多细节

这篇简短的帖子仅显示了我要分享的所有技术和工具的一小部分。如果您想了解更多重构,我鼓励您查看我的新在线书:

它是免费的,可以在GitHub上获得。在其中,我更详细地解释了这个主题。

希望您发现它有帮助!享受这本书ð