每次写代码的时候,总是感觉自己的代码很渣,于是买了一本《代码整洁之道》,希望能够学习一下优秀代码的书写原则。

由于平时的工作比较多,我并没有专门找时间阅读这本书,只是用一些边角时间来阅读,这么长时间过去了,现在才读到100多页。这篇blog也算是对前段时间阅读的一个小结吧。

就像说的题目一样,主旨就是一个词:整洁

糟糕的代码

我们应该如何理解糟糕的代码?

无非就是明明不准确的代码。其实糟糕的代码远不止此,很多时候,我们会为了时间和进度,赶着出产品,外包公司更甚。我最开始在腾骏,公司主要业务就是外包,由于当时没有把写代码当成一回事,导致后面代码维护比较困难,也使自己养成了坏习惯,其实应该在项目的初期,就应该定好编码规范,到后面的维护会要简单的多。

假如我们在写代码的时候,不注意规范,到了后面如果有新同志加入项目,由于对业务的不熟悉,以及代码的规范,很容易是新同学造成误解,进而编写出更糟糕的代码。长此以往,整个项目将会被糟糕的代码所吞噬。后果不堪设想。·

整洁的代码

当你阅读整洁的代码的时候,我会觉得你在阅读一首诗!事实确实是这样,当我首次来到轻客的时候,看到项目的代码,似乎不能仅仅使用整洁来形容,整个项目结构都相当严谨,有的时候,生怕自己的一个命名把整个项目玷污。

整洁的原则

变量

真应该是我们最经常听到的规范了。名副其实很容易理解,比如命名过程中出现$name1,呵呵,以前真的没少使用这种命名,现在我都想打死自己了,变量名+角标是需要严格禁止的。不过有些时候我们也会使用这样的命名:

$getActiveAccount
$getActiveAccounts
$getActiveAccountInfo

应该很难有人区分这三个函数有什么不同了,moneyAmount 和 money两个变量其实没有任何区别。

函数

对于面向对象,必不可少的就是类和函数了,在命名类的时候,应该使用名词,而函数应该是动词。

在写函数的时候,我们也应该按照专一原则,把大函数拆分成小函数,按照调用原则在类中进行排序。

作者还强调最好别写注释。如果是没读这本书的时候,我绝对是没办法理解的。因为项目在维护的时候,很少有人会去维护注释部分,随着时间的推移,注释和函数越来越不相符合。而且直接把代码注释是个讨厌的做法,因为后面的人,看着注释代码会觉得这段代码很有用,慢慢的,注释的代码就像破酒瓶一样。

格式

我们应该尽量不要写巨大篇幅的代码,因为行数很多的话,会让阅读者很难阅读,你能容忍去阅读一个函数行数超过整个屏幕吗?

其实书的内容远不止此,况且我现在才读1/3,虽然书中的代码是Java但是思想是一致的。

发表评论

电子邮件地址不会被公开。 必填项已用*标注