代码阅读有自身的一套技能,重要的是能够确定什么时候使用哪项技术。本书中,作者使用600多个现实的例子,向读者展示如何区分好的(和坏的)代码,如何阅读,应该注意什么,以及如何使用这些知识改进自己的代码。养成阅读高品质代码的习惯,可以提高编写代码的能力。
阅读代码是程序员的基本技能,同时也是软件开发、维护、演进、审查和重用过程中不可或缺的组成部分。本书首次将阅读代码作为一项独立课题,系统性地加以论述。本书引用的代码均取材于开放源码项目——所有程序员都应该珍视的宝库。本书围绕代码阅读,详细论述了相关的知识与技能。“他山之石、可以攻玉”,通过仔细阅读并学习本书,可以快速地提高读者代码阅读的技能与技巧,进而从现有的优秀代码、算法、构架、设计中汲取营养,提高自身的开发与设计能力。
本书适用于对程序设计的基本知识有一定了解,并想进一步提高自身开发能力的读者。
第1章 导论
1.1 为什么以及如何阅读代码
1.2 如何阅读本书
进阶读物
第2章 基本编程元素
2.1 一个完整的程序
2.2 函数和全局变量
2.3 while循环、条件和块
2.4 switch语句
2.5 for循环
2.6 break和continue语句
2.7 字符和布尔型表达式
2.8 goto语句
2.9 小范围重构
2.10 do循环和整型表达式
2.11 再论控制结构
进阶读物
第3章 高级C数据类型
3.1 指针
3.2 结构
3.3 共用体
3.4 动态内存分配
3.5 typedef声明
进阶读物
第4章 C数据结构
4.1 向量
4.2 矩阵和表
4.3 栈
4.4 队列
4.5 映射
4.6 集合
4.7 链表
4.8 树
4.9 图
进阶读物
第5章 高级控制流程
5.1 递归
5.2 异常
5.3 并行处理
5.4 信号
5.5 非局部跳转
5.6 宏替换
进阶读物
第6章 应对大型项目
6.1 设计与实现技术
6.2 项目的组织
6.3 编译过程和制作文件
6.4 配置
6.5 修订控制
6.6 项目的专有工具
6.7 测试
进阶读物
第7章 编码规范和约定
7.1 文件的命名及组织
7.2 缩进
7.3 编排
7.4 命名约定
7.5 编程实践
7.6 过程规范
进阶读物
第8章 文档
8.1 文档的类型
8.2 阅读文档
8.3 文档存在的问题
8.4 其他文档来源
8.5 常见的开放源码文档格式
进阶读物
第9章 系统构架
9.1 系统的结构
9.2 控制模型
9.3 元素封装
9.4 构架重用
进阶读物
第10章 代码阅读工具
10.1 正规表达式
10.2 用编辑器浏览代码
10.3 用grep搜索代码
10.4 找出文件的差异
10.5 开发自己的工具
10.6 用编译器来协助代码阅读
10.7 代码浏览器和美化器
10.8 运行期间的工具
10.9 非软件工具
可用工具和进阶读物
第11章 一个完整的例子
11.1 概况
11.2 攻坚计划
11.3 代码重用
11.4 测试与调试
11.5 文档
11.6 观察报告
附录A 代码概况
附录B 阅读代码的格言
NowavailablefromAbrams,thispopularbookoffersarare,close-uplookattheexquisite,lab...
《CSSWeb设计快速上手》介绍如何使用CSS来创建Web站点。全书共分9章介绍了CSS基础及应用,内容包括:CSS简介、布局和定位、样式化
新世纪五笔字型输入法-最新汉字输入法 本书特色 《新世纪五笔字型输入法》:由王玛字型发明人王水民教授授权。配有由中国王码公司提供的新世纪输入法正版软件。新世纪五...
网络英语-(中英双语) 本书特色 优秀的网上冲浪者没有固定的交流模式,如何在不同情景下选择*佳的交流方式呢 通过情景交流提升网上冲浪技能,通过案例分析提高各种在...
从零开始——Photoshop中文版典型实例 内容简介 Adobe公司推出的Photoshop软件集图像处理和矢量图形绘制于一体,自推出之日起就深受广大平面设计...
《双相障碍精准医学临床诊疗指南》内容简介:本书是“转化医学出版工程·关键技术”分册之一。双相障碍是一类高发的严重的精神疾病
《Offer来了》内容简介:《Offer来了:Java面试核心知识点精讲(原理篇)》是对Java程序员面试必备知识点的总结,详细讲解了JVM原理
《量子思维:探寻生命觉醒之旅》内容简介:本书把生命、意识乃至社会进化史当作一个觉醒过程,以东西方结合的特殊视角,采用“从顶
《城市治理的范式创新:上海城市运行“一网统管”》内容简介:国家治理体系如何回应数字经济的发展、数字社会的变迁和数字技术的迭
中文版Dreamweaver+Flash+Photoshop网页制作从入门到精通-CS5版-随书附赠光盘 本书特色 16大核心技术精解本书体系结构完整,由浅入深...
《苏东坡的诗词与人生》内容简介:本书以苏东坡一生的行迹为线索,采用漫话的形式,介绍了苏东坡各时期诗词的风格与成就。作者将诗
《宋代家礼》内容简介:《宋代家礼》一书将宋代家礼作为一种集体写作规范的历史场景来观察,探讨了这一时期书写者在家礼文本中的自
《沙乡年鉴》内容简介:在《沙乡年鉴》中,作者用生动优美的语言描述了自己在远离现代社会的荒僻农场中的生活,以及他游历美国各地
《大型IT系统性能测试入门经典》内容简介:《大型IT系统性能测试入门经典》是一本来自性能测试实战领域的专家作品,主要用来指导性
ArcGIS 9地理信息系统应用与实践-(上.下册) 内容简介 地理信息系统软件ArcGIS以其强大的功能体系和全方位的技术支持逐渐成为中国地理信息界用户群体*...
《榨书:主动成长的高回报读书法》内容简介:本书首先深入浅出地介绍了作者独创的“榨书”阅读法,提倡最大化地榨取书的价值,通过
《中国城市文明史》内容简介:当今世界有超过一半的人口居住在城市里,城市为居民提供安全、便捷、舒适的生活环境,是每个国家的政
《李国文散文》内容简介:李国文散文,无论抒写对现实人生的思考,还是关注历史上文人的生存状态,字里行间都透出真性情,具有洞明
《中国领先企业管理思想研究(珍藏版)》内容简介:在改革开放30年多的企业经营实践中,中国涌现了一批知名企业,许多企业保持了长
《HikariCP数据库连接池实战》内容简介:这是一本从设计思想、功能使用、原理实现、工程实践、技术扩展5个维度全面讲解数据库连接池