本书超越零散技巧的堆砌,从编程哲学的高度,深入剖析如何应用设计原则、实施模块化分解、进行性能优化及测试驱动开发,旨在*提升代码的可维护性、扩展性与协作效率。它不仅传授“如何写”,更阐释“为何这样写”,帮助您从根源上掌握化繁为简的艺术,构建经得起时间考验的软件系统,*终实现开发效率与代码质量的双重飞跃。这是您从合格迈向优秀、从程序员成长为工程师的指南。
售 价:¥
纸质售价:¥49.00购买纸书
6.8
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐

内容简介
前言
第1章 直面软件复杂性
1.1 代码为什么会越来越混乱
1.2 复杂性的真相
1.3 复杂性无处不在
1.4 你的代码正在失控
1.5 为什么简单的代码会变复杂
1.6 控制复杂性的策略
1.7 小结
第2章 遵循设计原则
2.1 单一职责原则
2.1.1 未遵循单一职责原则的代码示例
2.1.2 遵循单一职责原则的代码示例
2.2 开放封闭原则
2.2.1 未遵循开放封闭原则的代码示例
2.2.2 遵循开放封闭原则的代码示例
2.3 里氏替换原则
2.3.1 未遵循里氏替换原则的代码示例
2.3.2 遵循里氏替换原则的代码示例
2.4 接口隔离原则
2.4.1 未遵循接口隔离原则的代码示例
2.4.2 遵循接口隔离原则的代码示例
2.5 依赖倒置原则
2.5.1 未遵循依赖倒置原则的代码示例
2.5.2 遵循依赖倒置原则的代码示例
2.6 迪米特法则
2.6.1 未遵循迪米特法则的代码示例
2.6.2 遵循迪米特法则的代码示例
2.7 设计原则并非教条
2.8 小结
第3章 遵守编程规范
3.1 编程规范的多维内涵
3.2 编程规范的重要性
3.3 编程规范核心要素解析
3.4 制定高效编程规范
3.5 规范执行比规范本身更重要
3.6 解读业界优秀编程规范
3.7 小结
第4章 编写可维护性代码
4.1 为什么“代码可运行”远远不够
4.2 什么是可维护性代码
4.3 如何编写可维护性代码
4.3.1 命名的艺术:让变量和函数自述身份
4.3.2 掌控逻辑控制流程和数据流向
4.3.3 设计包结构
4.3.4 异常管理
4.3.5 提高代码的可测试性
4.3.6 使用设计模式
4.4 代码评审
4.5 小结
第5章 模块化编程
5.1 模块:分而治之
5.2 接口:连接的桥梁
5.3 抽象:提取共性,减少重复
5.4 深模块和浅模块
5.4.1 深模块
5.4.2 浅模块
5.5 封装和信息隐藏
5.6 组合优于继承
5.7 依赖注入和控制反转
5.8 小结
第6章 代码是数据的映射
6.1 以业务逻辑为核心的编程
6.2 以数据结构为核心的编程
6.3 应用数据结构优化代码
6.3.1 基本数据结构
6.3.2 高效使用Map结构
6.3.3 使用结构体优化重复代码
6.3.4 使用接口优化代码扩展性
6.4 业务逻辑驱动编程和数据结构驱动编程
6.5 小结
第7章 选择编程范式
7.1 什么是编程范式
7.2 为什么要掌握编程范式
7.3 编程范式分类
7.4 主流编程范式解析
7.4.1 过程式编程
7.4.2 面向对象编程
7.4.3 函数式编程
7.4.4 逻辑式编程
7.4.5 编程范式对比
7.5 对编程范式的思考
7.6 小结
第8章 分离业务逻辑和技术实现
8.1 业务逻辑和技术实现
8.2 分离业务逻辑代码和技术实现代码
8.3 关注点分离
8.4 领域驱动设计:解耦业务逻辑的利器
8.4.1 什么是领域驱动设计
8.4.2 领域驱动设计的关键概念
8.4.3 应用领域驱动设计分离业务逻辑和技术实现
8.5 实践中的挑战和解决方案
8.6 小结
第9章 测试驱动开发
9.1 软件测试概述
9.2 让测试成为编码的起点
9.3 单元测试实践
9.3.1 单元测试的优势
9.3.2 如何编写单元测试
9.4 小结
第10章 优化代码性能
10.1 性能优化时机
10.2 数据驱动的优化决策
10.3 性能优化策略
10.4 性能优化实践
10.4.1 优化计算效率
10.4.2 优化内存资源
10.4.3 优化I/O操作
10.5 代码可维护性和性能的平衡
10.6 小结
第11章 持续重构代码
11.1 重构为代码注入生命力
11.2 为什么重构不可忽视
11.3 何时重构
11.4 重构实践
11.5 识别代码的“坏味道”
11.5.1 重复代码
11.5.2 长函数
11.5.3 过长的参数列表
11.5.4 过大的类
11.5.5 过长的消息链
11.5.6 冗余类
11.5.7 过度抽象
11.5.8 神秘命名
11.5.9 隐式依赖
11.6 重构和重写
11.7 小结
第12章 文档、注释和知识共享
12.1 让文档成为团队的知识库
12.1.1 文档的必要性
12.1.2 明确文档类型
12.1.3 文档的结构和组织
12.1.4 文档的维护和更新
12.1.5 提高文档的可访问性和易用性
12.2 让注释为代码加分
12.2.1 统一注释格式
12.2.2 注释阐明代码意图,而非代码内容
12.2.3 注释描述代码中不明显的部分
12.2.4 区分低级注释和高级注释
12.2.5 同步更新注释和代码
12.3 知识共享和团队协作
12.3.1 促进知识共享
12.3.2 提高团队协作效率
12.4 小结
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜