互联网
类型
6.5
豆瓣评分
可以朗读
语音朗读
231千字
字数
2021-07-01
发行日期
展开全部
主编推荐语
1个示例,7次重构,助你辨别优劣代码。
内容简介
本书的核心思想是通过对各方面的代码质量进行比较,使读者了解经验丰富的开发者拥有的思维模式。
为了展示软件开发最佳实践,作者对一个水容器示例进行多次重构,讨论了18种实现,分别从7个方面改进代码质量:时间效率、空间效率、监控与可靠性、测试与可靠性、可读性、线程安全、可复用性。在此过程中,作者还探讨了与计算机科学、Java编程以及软件工程相关的专业话题,这些知识都有助于读者写出更好的代码。
本书面向初级和中级Java程序员,其他面向对象编程人员也能从中受益。
目录
- 版权信息
- 序
- 前言
- 致谢
- 关于本书
- 关于封面
- 第一部分 准备工作
- 第1章 软件质量和待解决问题
- 1.1 软件质量
- 1.2 主要的外部软件质量
- 1.3 主要的内部软件质量
- 1.4 软件质量之间的关系
- 1.5 特殊的质量
- 1.6 演进示例:水容器系统
- 1.7 数据的模型和表示
- 1.8 你好,容器(Novice)
- 1.9 小结
- 1.10 扩展阅读
- 第2章 Reference的实现
- 2.1 代码(Reference)
- 2.2 内存需求
- 2.3 时间复杂度
- 2.4 学以致用
- 2.5 小结
- 2.6 小测验答案和练习答案
- 2.7 扩展阅读
- 第二部分 软件质量
- 第3章 速度的要求:时间效率
- 3.1 常数时间内完成加水(Speed1)
- 3.2 常数时间内添加连接(Speed2)
- 3.3 最好的平衡:并查集算法(Speed3)
- 3.4 比较各种实现
- 3.5 来点儿新鲜的
- 3.6 真实世界的用例
- 3.7 学以致用
- 3.8 小结
- 3.9 小测验答案和练习答案
- 3.10 扩展阅读
- 第4章 宝贵的内存:空间效率
- 4.1 稍微挤一下(Memory1)
- 4.2 普通数组(Memory2)
- 4.3 弃用对象(Memory3)
- 4.4 黑洞(Memory4)
- 4.5 空间和时间的权衡
- 4.6 来点儿新鲜的
- 4.7 真实世界的用例
- 4.8 学以致用
- 4.9 小结
- 4.10 小测验答案和练习答案
- 4.11 扩展阅读
- 第5章 有自我意识的代码:通过监控实现可靠性
- 5.1 契约式设计
- 5.2 基于契约设计水容器
- 5.3 检查契约的容器(Contracts)
- 5.4 检查不变式的容器(Invariants)
- 5.5 来点儿新鲜的
- 5.6 真实世界的用例
- 5.7 学以致用
- 5.8 小结
- 5.9 小测验答案和练习答案
- 5.10 扩展阅读
- 第6章 别对我撒谎:通过测试保证可靠性
- 6.1 测试的基本概念
- 6.2 测试水容器(UnitTests)
- 6.3 可测试性(Testable)
- 6.4 来点儿新鲜的
- 6.5 真实世界的用例
- 6.6 学以致用
- 6.7 小结
- 6.8 小测验答案和练习答案
- 6.9 扩展阅读
- 第7章 让代码说话:可读性
- 7.1 关于可读性的一些观点
- 7.2 结构性的可读性特征
- 7.3 外部可读性特征
- 7.4 可读的容器(Readable)
- 7.5 可读性的终极思考
- 7.6 来点儿新鲜的
- 7.7 真实世界的用例
- 7.8 学以致用
- 7.9 小结
- 7.10 小测验答案和练习答案
- 7.11 扩展阅读
- 第8章 多个厨师一锅饭:线程安全
- 8.1 线程安全面临的挑战
- 8.2 处理死锁
- 8.3 线程安全的水容器(ThreadSafe)
- 8.4 不可变性(Immutable)
- 8.5 来点儿新鲜的
- 8.6 真实世界的用例
- 8.7 学以致用
- 8.8 小结
- 8.9 小测验答案和练习答案
- 8.10 扩展阅读
- 第9章 请重复利用:可复用性
- 9.1 确立边界
- 9.2 通用框架
- 9.3 一个通用容器的实现
- 9.4 通用的考虑
- 9.5 复原水容器(Generic)
- 9.6 社交网络的帖子
- 9.7 来点儿新鲜的
- 9.8 真实世界的用例
- 9.9 学以致用
- 9.10 总结
- 9.11 小测验答案和练习答案
- 9.12 扩展阅读
- 附录A 代码高尔夫:简洁性
- A.1 我能想到的最短代码(Golfing)
- A.2 扩展阅读
- 附录B 终极水容器类
- B.1 提高可读性
- B.2 提高可靠性
- 列表:每一章中主要的类
- 作者简介
展开全部
出版方
人民邮电出版社
人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。