4.6 用户推荐指数
互联网
类型
8.7
豆瓣评分
可以朗读
语音朗读
173千字
字数
2018-09-01
发行日期
展开全部
主编推荐语
对于每一位软件研发从业人员,无论从事的是具体编码实现、架构设计,还是软件研发管理,《架构整洁之道》都是不可或缺的。
内容简介
本书是创造“Clean神话”的Bob大叔在架构领域的登峰之作,围绕“架构整洁”这一重要导向,系统地剖析其缘起、内涵及应用场景,涵盖软件研发完整过程及所有核心架构模式。
本书分为6部分,第1部分纲领性地提出软件架构设计的终极目标,描述软件架构设计的重点与模式;第2~4部分从软件开发中三个基础编程范式的定义和特征出发,进一步描述函数、组件、服务设计与实现的定律,以及它们是如何有效构建软件系统的整体架构的;第5部分从整洁架构的定义开始,详细阐述软件架构设计过程中涉及的方方面面,包括划分内部组件边界、应用常见设计模式、避开错误、降低成本、处理特殊情况等,并以实战案例将内容有机整合起来;第6部分讲述具体实现细节;附录则透过作者数十年的软件从业经历再次印证《架构整洁之道》的观点。
目录
- 版权信息
- 内容简介
- 推荐序一
- 推荐序二 久远的教诲,古老的智慧
- 序言
- 前言
- 致谢
- 关于作者
- 关于技术审校者
- 第1部分 概述
- 第1章 设计与架构究竟是什么
- 目标是什么
- 案例分析
- 本章小结
- 第2章 两个价值维度
- 行为价值
- 架构价值
- 哪个价值维度更重要
- 艾森豪威尔矩阵
- 为好的软件架构而持续斗争
- 第2部分 从基础构件开始:编程范式
- 第3章 编程范式总览
- 结构化编程
- 面向对象编程
- 函数式编程
- 仅供思考
- 本章小结
- 第4章 结构化编程
- 可推导性
- goto是有害的
- 功能性降解拆分
- 形式化证明没有发生
- 科学来救场
- 测试
- 本章小结
- 第5章 面向对象编程
- 封装
- 继承
- 多态
- 本章小结
- 第6章 函数式编程
- 整数平方
- 不可变性与软件架构
- 可变性的隔离
- 事件溯源
- 本章小结
- 第3部分 设计原则
- 第7章 SRP:单一职责原则
- 反面案例2:代码合并
- 解决方案
- 本章小结
- 第8章 OCP:开闭原则
- 思想实验
- 依赖方向的控制
- 信息隐藏
- 本章小结
- 第9章 LSP:里氏替换原则
- 继承的使用指导
- 正方形/长方形问题
- LSP与软件架构
- 违反LSP的案例
- 本章小结
- 第10章 ISP:接口隔离原则
- ISP与编程语言
- ISP与软件架构
- 本章小结
- 第11章 DIP:依赖反转原则
- 稳定的抽象层
- 工厂模式
- 具体实现组件
- 本章小结
- 第4部分 组件构建原则
- 第12章 组件
- 组件发展史
- 重定位技术
- 链接器
- 本章小结
- 第13章 组件聚合
- 复用/发布等同原则
- 共同闭包原则
- 共同复用原则
- 组件聚合张力图
- 本章小结
- 第14章 组件耦合
- 无依赖环原则
- 自上而下的设计
- 稳定依赖原则
- 稳定抽象原则
- 本章小结
- 第5部分 软件架构
- 第15章 什么是软件架构
- 开发(Development)
- 部署(Deployment)
- 运行(Operation)
- 维护(Maintenance)
- 保持可选项
- 设备无关性
- 垃圾邮件
- 物理地址寻址
- 本章小结
- 第16章 独立性
- 用例
- 运行
- 开发
- 部署
- 保留可选项
- 按层解耦
- 用例的解耦
- 解耦的模式
- 开发的独立性
- 部署的独立性
- 重复
- 再谈解耦模式
- 本章小结
- 第17章 划分边界
- 几个悲伤的故事
- FitNesse
- 应在何时、何处画这些线
- 输入和输出怎么办
- 插件式架构
- 插件式架构的好处
- 本章小结
- 第18章 边界剖析
- 跨边界调用
- 令人生畏的单体结构
- 部署层次的组件
- 线程
- 本地进程
- 服务
- 本章小结
- 第19章 策略与层次
- 层次(Level)
- 本章小结
- 第20章 业务逻辑
- 业务实体
- 用例
- 请求和响应模型
- 本章小结
- 第21章 尖叫的软件架构
- 架构设计的主题
- 架构设计的核心目标
- 那Web呢
- 框架是工具而不是生活信条
- 可测试的架构设计
- 本章小结
- 第22章 整洁架构
- 依赖关系规则
- 一个常见的应用场景
- 本章小结
- 第23章 展示器和谦卑对象
- 谦卑对象模式
- 展示器与视图
- 测试与架构
- 数据库网关
- 数据映射器
- 服务监听器
- 本章小结
- 第24章 不完全边界
- 省掉最后一步
- 单向边界
- 门户模式
- 本章小结
- 第25章 层次与边界
- 基于文本的冒险游戏:Hunt The Wumpus
- 可否采用整洁架构
- 交汇数据流
- 数据流的分割
- 本章小结
- 第26章 Main组件
- 最细节化的部分
- 本章小结
- 第27章 服务:宏观与微观
- 面向服务的架构
- 服务所带来的好处
- 运送猫咪的难题
- 对象化是救星
- 基于组件的服务
- 横跨型变更
- 本章小结
- 第28章 测试边界
- 测试也是一种系统组件
- 可测试性设计
- 测试专用API
- 本章小结
- 第29章 整洁的嵌入式架构
- “程序适用测试”测试
- 目标硬件瓶颈
- 本章小结
- 第6部分 实现细节
- 第30章 数据库只是实现细节
- 关系型数据库
- 为什么数据库系统如此流行
- 假设磁盘不存在会怎样
- 实现细节
- 但性能怎么办呢
- 一段轶事
- 本章小结
- 第31章 Web是实现细节
- 无尽的钟摆
- 总结一下
- 本章小结
- 第32章 应用程序框架是实现细节
- 框架作者
- 单向婚姻
- 风险
- 解决方案
- 不得不接受的依赖
- 本章小结
- 第33章 案例分析:视频销售网站
- 产品
- 用例分析
- 组件架构
- 依赖关系管理
- 本章小结
- 第34章 拾遗
- 按层封装
- 按功能封装
- 端口和适配器
- 按组件封装
- 具体实现细节中的陷阱
- 组织形式与封装的区别
- 其他的解耦合模式
- 本章小结:本书拾遗
- 后序
- 附录A 架构设计考古
- 工会财务记账系统
- 激光切割
- 铝压铸监控
- 4-TEL
- 维护中心计算机(SAC)
- C语言
- BOSS
- pCCU
- DLU/DRU
- VRS
- 电子前台
- 修理工派遣系统
- Clear Communications公司
- ROSE
- 系统架构师注册考试
- 小结
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。