本书主要观点:
1. 优雅的命名
1.1 命名具备自解释性(解释用途)
1.2 能附加(必要的)更多信息(匈牙利命名法的类型信息)
1.3 命名格式统一,如
kConstName
骆驼命名法或单词下划线
bool变量的is, has, can等前缀
...
1.4 遵循业界的命名习惯
如 getXXX, size(), empty()等操作一定是轻量级的
2. 代码的排版
2.1 统一的排版格式(Uniform Format)
2.2 换行与(行间)对齐保证一致性
2.3 用方法整理行间难以对齐的代码
...
3. 注释
3.1 总结性/全局性的代码非常重要
3.2 必要的TODO/FIXME
3.3 为接口提供功能说明,为复杂的实现提供逻辑说明
3.4 注释的英语句子要简洁,别墨迹
4. 简化逻辑
4.1 少用(不用)嵌套太深的if-else,代之以方法或 &&、|| 等表达式
4.2 条件语句中变化的值放左边,稳定的值放右边,符合英语表达习惯
4.3 拆分过长的表达式,如方法或多阶段语句
4.4 别引入无谓的变量,减小变量的作用域
5. 复杂的逻辑与细节
5.1 设计模式的合理使用
5.2 单一责任原则
6. 注重编写和使用代码库
7. 注重TDD的思想
注重代码质量利国利民
《编写可读代码的艺术》热门书评
-
代码为什么需要可读?
19有用 0无用 mftian 2012-10-01
有一次在code review的时候,一个应届毕业生问我,代码为什么需要可读性。我和他讲代码的美感和优雅、可维护性、可测试性,他却说那有什么用,只要能跑起来,能够实现功能,不就是好代码么?我不能否认这一点,但只能实现功能的代码绝对称不上好代码,就像没杀过人的人就是好人,你觉得对么?也有人和我争论说,...
-
实在、好读、漫画幽默的小书
7有用 1无用 蚂蚁 2012-03-19
接着去年11月份实习时用 kindle 读到 20% 落下的好书,中间隔了几个月...这本新书的名字也是“The Art of xxx”,很容易让我感觉到这是很严谨不易读的书,那本 TAOCP 是我这种数学能力超弱的人读不了的,而 TAOUP 对几乎没怎么用过 Unix/Linux 的我也比较难理解...
-
低成本编程
4有用 0无用 想太多... 2012-10-15
软件开发除了要能达到目标,还要尽量减少成本。怎样减少成本?这里抛开人员分配,任务安排等项目管理方面的不管,有哪些呢?除了明确准确的需求(减少无效编程),良好的设计(更巧的达到目标 less makes more)外,我想就是编码质量。编码的成本分开发成本与维护成本,后者成本又是远高。 &n...
-
这是一本被低估了价值的书
3有用 1无用 才克服死机 2012-07-19
“这是一本被低估了其价值的书”,一位朋友在向我推荐这本书时向我如是说。听到这样的评价,笔者在拿到书后立即开始兴奋地阅读,但因为一些琐事,本打算一周内看完写书评的,结果又拖了两天。总体来讲,确实受益匪浅,物超所值,很受用。作为一名程序员,当看别人的代码时,总希望清晰易读,所以自己写代码时,也希望有这种...
-
短小精悍,受益匪浅
3有用 1无用 Nina 2012-07-16
这本书短小精悍,引人入胜。译文流畅,在阅读过程中没有障碍。 译版不过170多页,分成了15个章节,易于查阅。还别具匠心地在适宜处插入漫画。即使是阅读文字耐心不足的人,也能以轻松愉快的心情读完本书。 本书的确是浓缩的精华。...