代码清理和优化,从哪里开始?

时间:2017-09-20 13:09:45

标签: optimization code-cleanup

我想优化我的angularjs前端应用程序并清理代码以提供更好的代码质量。

我考虑过引入更多的抽象,因为我实现了许多类似的外观,但略有不同的控制器。

我的问题如下:

  • 是否有识别错误代码并对其进行优化的常用技巧?
  • 如何判断代码是好,坏还是多余?
  • 在尝试提供更好的代码质量时应该从哪里开始 现有的软件项目?

4 个答案:

答案 0 :(得分:1)

如果代码好或坏是您自己的意见。

为了使代码看起来更好,更有效,我会做这样的事情:

  • 不要让线条变长。
  • 使用有意义的变量。
  • 使用标签并在过于混乱时输入。

清理代码还有很多东西,但这只是一些例子。

答案 1 :(得分:1)

如果代码有效 - 请勿触摸它:)

然后,当您处理错误修复或新功能\更改时 - 看看您是否也可以逐步改进您正在使用的代码片段。您使用代码的次数越多,您对整体情况的理解就越明显,改进和优化的机会就越明显。 (您还应该继续从其他来源学习 - 书籍,互联网,其他代码库)

现在有魔术“一刀切”的解决方案:)但是,您可以从其他答案中建议的简单样式更改开始。

答案 2 :(得分:1)

您引用的流程通常称为Refactoring。有许多改进代码的标准技术; Martin Fowler的书“Refactoring”有一个列表,附有例子。

许多流行的IDE都内置了重构工具。

敏捷开发中的一个过程称为“红色/绿色/重构”。红色表示您的代码未通过其单元测试;绿色意味着它通过(即它做它应该做的),“重构”意味着你使它优雅,可维护和清洁。因为你有一个单元测试,你知道重构不会破坏代码。

从哪里开始是一个棘手的问题 - 我通常建议您在修复错误时进行重构。您也可以编写一个单元测试来揭示错误,并在修复错误时整理代码。由于该模块存在错误,因此可能存在高风险,因此您应该提高代码质量。

答案 3 :(得分:1)

回答你的问题:

  1. 是的,通过查看代码本身,有经验的程序员可以判断代码是否具有某些特征。存在一些可以指示质量方面的警报信号的指标,例如"许多点"面向对象的语言(在Javascript中相同)表示紧密耦合。这是comprehensive list
  2. 通过静态代码分析查看或之前编写的内容。
  3. 正如其他人所说,为了拥有一个好看的代码库,不要优化或重构。当您需要再次触及现有代码时,例如添加功能或修复错误然后开始寻找代码冗余和许多其他可能表明重构代码的信号。 Martin Fowler用逐步的例子写了一篇很好的book,IMO是每个开发人员都必须阅读的。 Misko的site也是一个很好的起点。他讲的是可测性,但是好的"代码很容易测试。
  4. 在重构之前,真正重要的是拥有一个强大的自动化测试基础。如果没有添加测试,那么确保您不会破坏现有功能。

    这个主题非常庞大,不可能在这里发布,但我认为它是最有经验的程序员之一。