您好,欢迎来到聚文网。 登录 免费注册
架构整洁之道

架构整洁之道

  • 字数: 394000.0
  • 装帧: 平装
  • 出版社: 电子工业出版社
  • 出版日期: 2018-09-01
  • 商品条码: 9787121347962
  • 版次: 1
  • 开本: 16开
  • 页数: 324
  • 出版年份: 2018
定价:¥99 销售价:登录后查看价格  ¥{{selectedSku?.salePrice}} 
库存: {{selectedSku?.stock}} 库存充足
{{item.title}}:
{{its.name}}
精选
内容简介
《架构整洁之道》是创造“Clean神话”的Bob大叔在架构领域的登峰之作,围绕“架构整洁”这一重要导向,系统地剖析其缘起、内涵及应用场景,涵盖软件研发完整过程及所有核心架构模式。本书分为6部分,第1部分纲领性地提出软件架构设计的终极目标,描述软件架构设计的重点与模式;第2~4部分从软件开发中三个基础编程范式的定义和特征出发,进一步描述函数、组件、服务设计与实现的定律,以及它们是如何有效构建软件系统的整体架构的;第5部分从整洁架构的定义开始,详细阐述软件架构设计过程中涉及的方方面面,包括划分内部组件边界、应用常见设计模式、避开错误、降低成本、处理特殊情况等,并以实战案例将内容有机整合起来;第6部分讲述具体实现细节;附录则透过作者数十年的软件从业经历再次印证本书的观点。对于每一位软件研发从业人员――无论从事的是具体编码实现、架构设计,还是软件研发管理,本书都是不可或缺的。
作者简介
罗伯特·C.马丁,重量软件开发大师,设计模式和敏捷开发先驱,敏捷联盟首任主席,C++Report主编,被后辈程序员尊称为“Bob大叔”。20世纪。70年代初成为职业程序员。后创办Object Mentor公司并任总裁。Martin还是一名多产的作家。至今已发表数百篇文章、论文和博客文章。除本书外,还著有《代码整洁之道》《敏捷软件开发:原则、模式和实践》《LJML:Java程序员指南》等。
目录
   第1部分概述

第1章设计与架构究竟是什么3

目标是什么4

案例分析5

本章小结11

第2章两个价值维度12

行为价值13

架构价值13

哪个价值维度更重要14

艾森豪威尔矩阵15

为好的软件架构而持续斗争16

第2部分从基础构件开始:编程范式

第3章编程范式总览21

结构化编程22

面向对象编程22

函数式编程23

仅供思考23

本章小结24

第4章结构化编程25

可推导性26

goto是有害的28

功能性降解拆分29

形式化证明没有发生29

科学来救场29

测试30

本章小结31

第5章面向对象编程32

封装33

继承36

多态38

本章小结44

第6章函数式编程45

整数平方46

不可变性与软件架构47

可变性的隔离48

事件溯源49

本章小结51

第3部分设计原则

第7章SRP:单一职责原则56

反面案例2:代码合并59

解决方案60

本章小结61

第8章OCP:开闭原则62

思想实验63

依赖方向的控制67

信息隐藏67

本章小结67

第9章LSP:里氏替换原则68

继承的使用指导69

正方形/长方形问题70

LSP与软件架构70

违反LSP的案例71

本章小结73

第10章ISP:接口隔离原则74

ISP与编程语言76

ISP与软件架构76

本章小结77

第11章DIP:依赖反转原则78

稳定的抽象层79

工厂模式80

具体实现组件82

本章小结82

第4部分组件构建原则

第12章组件84

组件发展史85

重定位技术88

链接器88

本章小结90

第13章组件聚合91

复用/发布等同原则92

共同闭包原则93

共同复用原则94

组件聚合张力图95

本章小结97

第14章组件耦合98

无依赖环原则99

自上而下的设计105

稳定依赖原则106

稳定抽象原则112

本章小结117

第5部分软件架构

第15章什么是软件架构120

开发(Development)122

部署(Deployment)123

运行(Operation)123

维护(Maintenance)124

保持可选项124

设备无关性126

垃圾邮件128

物理地址寻址129

本章小结130

第16章独立性131

用例132

运行133

开发133

部署134

保留可选项134

按层解耦135

用例的解耦136

解耦的模式136

开发的独立性137

部署的独立性137

重复138

再谈解耦模式139

本章小结141

第17章划分边界142

几个悲伤的故事143

FitNesse146

应在何时、何处画这些线148

输入和输出怎么办151

插件式架构152

插件式架构的好处153

本章小结154

第18章边界剖析155

跨边界调用156

令人生畏的单体结构156

部署层次的组件158

线程159

本地进程159

服务160

本章小结161

第19章策略与层次162

层次(Level)163

本章小结166

第20章业务逻辑167

业务实体168

用例169

请求和响应模型171

本章小结172

第21章尖叫的软件架构173

架构设计的主题174

架构设计的核心目标175

那Web呢175

框架是工具而不是生活信条175

可测试的架构设计176

本章小结176

第22章整洁架构177

依赖关系规则179

一个常见的应用场景183

本章小结184

第23章展示器和谦卑对象185

谦卑对象模式186

展示器与视图186

测试与架构187

数据库网关188

数据映射器188

服务监听器189

本章小结189

第24章不接近边界190

省掉最后一步191

单向边界192

门户模式193

本章小结193

第25章层次与边界194

基于文本的冒险游戏:HuntTheWumpus195

可否采用整洁架构196

交汇数据流199

数据流的分割199

本章小结201

第26章Main组件203

最细节化的部分204

本章小结208

第27章服务:宏观与微观209

面向服务的架构210

服务所带来的好处210

运送猫咪的难题212

对象化是救星213

基于组件的服务215

横跨型变更216

本章小结216

第28章测试边界217

测试也是一种系统组件218

可测试性设计219

测试专用API220

本章小结221

第29章整洁的嵌入式架构222

“程序适用测试”测试225

目标硬件瓶颈228

本章小结238

第6部分实现细节

第30章数据库只是实现细节240

关系型数据库241

为什么数据库系统如此流行242

假设磁盘不存在会怎样243

实现细节243

但性能怎么办呢244

一段轶事244

本章小结246

第31章Web是实现细节247

无尽的钟摆248

总结一下250

本章小结251

第32章应用程序框架是实现细节252

框架作者253

单向婚姻253

风险254

解决方案255

不得不接受的依赖255

本章小结256

第33章案例分析:视频销售网站257

产品258

用例分析258

组件架构260

依赖关系管理261

本章小结262

第34章拾遗263

按层封装264

按功能封装266

端口和适配器268

按组件封装270

具体实现细节中的陷阱274

组织形式与封装的区别275

其他的解耦合模式277

本章小结:本书拾遗279

后序280

附录A架构设计考古283

蜀ICP备2024047804号

Copyright 版权所有 © jvwen.com 聚文网