一、整洁代码

364 阅读3分钟

可读性:★★★★✰ 理解难度:★★★✰✰

概要

强调写整洁代码的重要性。

细节的重要性

宏大建筑中的最细小的部分,比如关不紧的门、有点儿没铺平的地板,甚至是凌乱的桌面,都会将整个大局的魅力破坏殆尽。

一些警句

神在细节之中

及时一针省九针

今日事今日毕

巨木生于树籽

防病好过治病

一天一苹果,医生远离我(An apple a day keep the doctor away)

引用丹麦谚语:小处诚实非小事,提醒我们对自己需要诚实,问自己是否已尽力“把露营地清理的比来时还干净”?

什么样的人适合阅读本书

  1. 你是程序员

  2. 你想成为更好的程序员

  3. 本书分为三部分:

    1. 编写整洁代码的原则、模式、实践
    2. 案例
    3. 上述案例中得到的启示和灵感

    如果你跳过案例研究部分,只阅读了第一部分和第三部分,那就不过是有看了一本关于写出好软件的“感觉不错”的书。

整洁代码的一些观点

  1. 衡量代码质量的唯一有效标准: WTF / min

  2. 知行合一:比如你了解自行车的所有原理,但是第一次骑车时还是会摔倒。

  3. 代码是否会消失?机器并不能完全取代人类,代码永存。

  4. 糟糕的代码可以毁掉一家公司,为何会有糟糕的代码,赶时间?回头清理?勒布朗法则:稍后等于永不(Later equals never)!

  5. 我们是否应该把问题归咎于产品、用户、运营等,我们应该有专业的态度,比如如果病人教医生怎么做,医生绝对应该拒绝,需要有自己专业的判断。

  6. 能分辨出整洁的代码,并不意味着会写整洁的代码,写整洁的代码,需要遵循大量的小技巧。编写整洁代码就像艺术家,他能用一系列变换把一块白板变作由优雅代码构成的系统。

  7. 有多少程序员,就有多少对整洁代码的定义。

大佬们对整洁代码的标准

C++语言发明者- Bjarne Stroustrup

优雅:外表或举止上令人愉悦的优美和雅观;令人愉悦的精致和简单。

高效

整洁代码只做好一件事

《面向对象分析与设计》作者- Grady Booch

简单直接

不隐藏设计者意图,干净利落的抽象和直接了当的控制语句

优美的散文

Eclipse战略“教父” - Dave Thomas

可由作者之外的开发者阅读和增补

有意义的命名

提供一种做一件事的途径,少依赖

《修改代码的艺术》作者 - Michael Feathers

几乎没有修改的余地,企图改进它,总会回到原点

《极限编程实施》- Ron Jeffries

不要重复代码,只做一件事

Wiki发明者 - Ward Cunningham

深合己意,语言是死板的,是程序员让语言显得简单

作者鲍勃大叔

代码读和写的比例:10:1

总结

“让营地比来时更干净。”

“艺术书并不保证你读过之后能成为艺术家。”

“你还得练,孩子,还得练!”


本文参考《代码整洁之道》(Robert C. Martin著,韩磊译)。


浙江大华技术股份有限公司-软研-智慧城市产品研发部招聘高级前端,欢迎来撩,有意向可发送简历到chen_zhen@dahuatech.com,长期有效

上一篇《代码整洁之道-序章》

下一篇《二、有意义的命名》