关于编写可读代码的艺术这本书,有人这样表达对它的好感——插图幽默合理,问题直指要害,方法简单易行。不知道你是因为什么原因而开始关注这本书的呢?的确,本节内容东坡小编为大家整理带来的是一份pdf格式高清完整版内容无水印的编写可读代码的艺术电子书,这本书短小精悍,引人入胜。译文流畅,在阅读过程中没有障碍。另外书本中还别具匠心地在适宜处插入漫画。即使是阅读文字耐心不足的人,也能以轻松愉快的心情读完本书。译版不过170多页,分成了15个章节,易于查阅。本书的确是浓缩的精华——所以你还在等什么?想要看编写可读代码的艺术这本书的话,就快来下载吧!
编写可读代码的艺术目录
前言1
第1章 代码应当易于理解5
是什么让代码变得“更好” 6
可读性基本定理7
总是越小越好吗7
理解代码所需的时间是否与其他目标有冲突8
最难的部分8
第一部分 表面层次的改进9
第2章 把信息装到名字里11
选择专业的词12
避免像tmp和retval这样泛泛的名字14
用具体的名字代替抽象的名字17
为名字附带更多信息19
名字应该有多长22
利用名字的格式来传递含义24
总结25
第3章 不会误解的名字27
例子:Filter()28
例子:Clip(text, length)28
推荐用first和last来表示包含的范围29
推荐用begin和end来表示包含/排除范围30
给布尔值命名30
与使用者的期望相匹配31
例子:如何权衡多个备选名字33
总结34
第4章 审美36
为什么审美这么重要37
重新安排换行来保持一致和紧凑38
用方法来整理不规则的东西40
在需要时使用列对齐41
选一个有意义的顺序,始终一致地使用它42
把声明按块组织起来43
把代码分成“段落”44
个人风格与一致性45
总结46
第5章 该写什么样的注释47
什么不需要注释49
记录你的思想52
站在读者的角度54
最后的思考——克服“作者心理阻滞”58
总结59
第6章 写出言简意赅的注释60
让注释保持紧凑61
避免使用不明确的代词61
润色粗糙的句子62
精确地描述函数的行为62
用输入/输出例子来说明特别的情况63
声明代码的意图64
“具名函数参数”的注释64
采用信息含量高的词65
总结66
第二部分 简化循环和逻辑67
第7章 把控制流变得易读69
条件语句中参数的顺序70
if/else语句块的顺序71
?:条件表达式(又名“三目运算符”)73
避免do/while循环74
从函数中提前返回76
臭名昭著的goto76
最小化嵌套77
你能理解执行的流程吗80
总结81
第8章 拆分超长的表达式82
用做解释的变量83
总结变量83
使用德摩根定理84
滥用短路逻辑84
例子:与复杂的逻辑战斗85
拆分巨大的语句87
另一个简化表达式的创意方法88
总结89
第9章 变量与可读性91
减少变量92
缩小变量的作用域94
只写一次的变量更好100
最后的例子101
总结103
第三部分 重新组织代码105
第10章 抽取不相关的子问题107
介绍性的例子:findClosestLocation()108
纯工具代码109
其他多用途代码110
创建大量通用代码112
项目专有的功能112
简化已有接口113
按需重塑接口114
过犹不及115
总结116
第11章 一次只做一件事117
任务可以很小119
从对象中抽取值120
更大型的例子124
总结126
第12章 把想法变成代码127
清楚地描述逻辑128
了解函数库是有帮助的129
把这个方法应用于更大的问题130
总结133
第13章 少写代码135
别费神实现那个功能——你不会需要它136
质疑和拆分你的需求136
保持小代码库138
熟悉你周边的库139
例子:使用Unix工具而非编写代码140
总结141
第四部分 精选话题143
第14章 测试与可读性145
使测试易于阅读和维护146
这段测试什么地方不对146
使这个测试更可读147
让错误消息具有可读性150
选择好的测试输入152
为测试函数命名154
那个测试有什么地方不对155
对测试较好的开发方式156
走得太远158
总结158
第15章 设计并改进“分钟/小时计数器”160
问题161
定义类接口161
尝试1:一个幼稚的方案164
尝试2:传送带设计方案166
尝试3:时间桶设计方案169
比较三种方案173
总结174
附录 深入阅读175
编写可读代码的艺术内容简介
本书关注编码的细节,总结了很多提高代码可读性的小技巧,看似都微不足道,但是对于整个软件系统的开发而言,它们与宏观的架构决策、设计思想、指导原则同样重要。编码不仅仅只是一种技术,也是一门艺术,编写可读性高的代码尤其如此。如果你要成为一位优秀的程序员,要想开发出高质量的软件系统,必须从细处着手,做到内外兼修,本书将为你提供有效的指导。
编写可读代码的艺术内容截图
- PC官方版
- 安卓官方手机版
- IOS官方手机版