你可能忽视的细节-代码整洁之道(上)

最近被领导安排,参加了几次codeReview,发现了不少不大不小的问题。因为是另一个小组的,所以我基本上没怎么关注业务逻辑,主要重点放在了对代码风格、抽象层次等的关注,随之发现了一堆问题。

正好我最近在看《代码整洁之道》这本书,因此我有了整理这方面的一些想法。

本系列将分为上中下三篇,分别从纯理论方向实践层面来对代码整洁之道进行个人的一些见解说明。

代码整洁之道

对于程序员来说,最不愿意的一件事情,就是接手别人的代码。一方面是因为是另一个人的逻辑,要从头到尾理解一遍需要花费很大的功夫,另一方面就是因为很有可能是祖传代码,又臭又长。

第一个原因还好,配合prd,啃一段时间还是可以啃下来的。但是对于祖传代码,就不是这么简单了。看着又臭又长、逻辑不清晰、抽象不分明、一行注释没有的代码,所有人都会头疼。

什么是代码

将需求明确道机器可以执行的细节成都,就是编程要做的事情,而这种规约正是代码。

简而言之,代码就是我们通过一个约定好的规范,将我们脑海中的想法,转化为机器可以读取的一种方式。

就像是一个翻译员一样,好的代码可以让机器更好的读取,拥有更好的性能,更高的抽象,更少的重复,而不好的代码,就如同机翻一样,不仅对于执行者有更大的负担,对于代码的接手者也有着极大的心智负担。

代码整洁的重要性

勒布朗法则:随后等于永不

一开始的时候,每个项目都是整洁的。

但是随着代码复杂程度的增加,代码混乱程度也会随之增加。而随着混乱程度的增加,团队生产力会持续下降,当生产力下降时,会增加更多人手到项目中,以期望提高生产力,可是新人并不熟悉整体,于是会愈发的混乱。

因此为了避免这种情况,我们需要尽可能的一直保持代码的整洁。

但是很多时候,项目要求都比较紧急,可能会以完成任务为第一目标,并不会注重代码的整洁以及可维护性。然后就会像上面说的那样,代码愈发混乱,愈发不可维护。

制造混乱无助于开发,混乱只会拖慢你的进度。想要加快进度,就需要尽可能的保持代码的整洁。

因此,任何时候,维护代码的整洁、统一都是很有必要的。

就比如你是一个医生,病人要求你在做手术之前别洗手,因为那会浪费一点时间,很显然,这是不合理的。

我们应该如何保持代码的整洁

破窗理论:环境中的不良现象如果被放任存在,会诱使人们仿效,甚至变本加厉

为了我们代码的整洁,我们需要为他花费一定的时间来进行优化。

整洁的代码就是作者着力照料的代码。有人曾花时间让它保持简单有序。他们适当的关注到了细节,他们在意过。

一般来说,除了linter等用于规范代码格式的工具之外,还有一些需要自己进行关注的方面:

  • 代码逻辑直接了当
  • 减少依赖便于维护
  • 根据分层战略完善错误处理
  • 单元测试覆盖全面
  • 有意义的命名(做到名副其实)
  • 提供一种而非多种做某件事的途径(没有重复代码)

小结

本篇从代码整洁程度的重要性、如何保持代码的整洁等几个宏观的方面,大概介绍了一些为什么要维持代码的整洁的理由,下一篇,我们将从

  • 命名
  • 函数
  • 注释
  • 代码格式
  • 错误处理
  • 边界
  • 单元测试
  • 迭进设计
  • 逐步改进

等方面,具体来介绍代码整洁的一些重点。

希望看完这三篇,对你有所帮助。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享