- ISBN:9787121224485
- 装帧:平装-胶订
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:584
- 出版时间:2014-03-01
- 条形码:9787121224485 ; 978-7-121-22448-5
本书特色
本书分别从战略和战术层面详尽地讨论了如何实现DDD,其中包含了大量的*实践、设计准则和对一些问题的折中性讨论。全书共分为14章,在DDD战略部分,本书向我们讲解了领域、限界上下文、上下文映射图和架构等内容,战术部分包括实体、值对象、领域服务、领域事件、聚合和资源库等内容。一个虚构的案例研究贯穿全书,这对于实例讲解DDD实现来说非常有用。
内容简介
领域驱动设计(DDD)是教我们如何做好软件的,同时也是教我们如何更好地使用面向对象技术的。它为我们提供了设计软件的全新视角,同时也给开发者留下了一大难题:如何将领域驱动设计付诸实践?弗农的这本《实现领域驱动设计》为我们给出了全面的解答。本书分别从战略和战术层面详尽地讨论了如何实现DDD,其中包含了大量的很好实践、设计准则和对一些问题的折中性讨论。《实现领域驱动设计》共分为14章,在DDD战略部分,《实现领域驱动设计》向我们讲解了领域、限界上下文、上下文映射图和架构等内容,战术部分包括实体、值对象、领域服务、领域事件、聚合和资源库等内容。一个虚构的案例研究贯穿全书,这对于实例讲解DDD实现来说很好有用。本书在DDD的思想和实现之间建立起了一座桥梁,架构师和程序员均可阅读,同时也可以作为一本DDD参考书。
目录
序 ....................................................................................... xix
前言 ................................................................................... xxi
致谢 ................................................................................. xxxi
关于作者 ......................................................................... xxxv
如何使用本书..................................................................xxxvii
第1章 DDD入门 ....................................................................1
我能DDD吗? ....................................................................................2
为什么我们需要DDD .........................................................................5
如何DDD .......................................................................................... 17
使用DDD的业务价值 .......................................................................22
1.你获得了一个非常有用的领域模型 ......................................22
2.你的业务得到了更准确的定义和理解 ..................................23
3.领域专家可以为软件设计做出贡献 ......................................23
4.更好的用户体验 .....................................................................23
5.清晰的模型边界 ....................................................................24
6.更好的企业架构 ....................................................................24
7.敏捷、迭代式和持续建模 ......................................................24
8.使用战略和战术新工具 .........................................................24
实施DDD所面临的挑战...................................................................25
虚构的案例,真实的实践 ................................................................. 33
本章小结 ...........................................................................................36
第2章 领域、子域和限界上下文 ............................................37
总览 ................................................................................................... 37
工作中的子域和限界上下文 ..................................................... 38
将关注点放在核心域上 ........................................................... 42
战略设计为什么重要 ....................................................................... 45
现实世界中领域和子域 ....................................................................48
x 目录
理解限界上下文 ................................................................................ 53
限界上下文不仅仅只包含模型 ................................................. 57
限界上下文的大小 .................................................................... 59
与技术组件保持一致 ............................................................... 61
示例上下文........................................................................................ 62
协作上下文 ................................................................................63
身份与访问上下文 ....................................................................69
敏捷项目管理上下文 ................................................................ 71
本章小结 ...........................................................................................73
第3章 上下文映射图 ............................................................75
上下文映射图为什么重要 ................................................................ 75
绘制上下文映射图 ....................................................................77
产品和组织关系 .......................................................................79
映射3个示例限界上下文 ..........................................................82
本章小结 ...........................................................................................97
第4章 架构 .........................................................................99
采访一个成功的CIO....................................................................... 100
分层 ................................................................................................. 104
依赖倒置原则 ......................................................................... 107
六边形架构(端口与适配器) ........................................................ 110
面向服务架构 ..................................................................................114
REST ................................................................................................117
REST作为一种架构风格 .........................................................117
RESTful HTTP服务器的关键方面 ........................................ 118
RESTful HTTP客户端的关键方面 ........................................ 119
REST和DDD .......................................................................... 120
为什么是REST? ................................................................... 121
命令和查询职责分离——CQRS.................................................... 121
CQRS的各个方面 ................................................................... 123
处理具有*终一致性的查询模型 ......................................... 128
事件驱动架构 ................................................................................. 129
目录xi
管道和过滤器 ......................................................................... 131
长时处理过程(也叫Saga) ................................................... 134
事件源 ..................................................................................... 140
数据网织和基于网格的分布式计算 .............................................. 143
数据复制 ................................................................................. 144
事件驱动网织和领域事件 ..................................................... 145
持续查询 ................................................................................. 145
分布式处理 ............................................................................. 146
本章小结 ......................................................................................... 148
第5章 实体 ........................................................................ 149
为什么使用实体 .............................................................................. 149
唯一标识 ......................................................................................... 151
用户提供唯一标识 ................................................................. 152
应用程序生成唯一标识 ......................................................... 153
持久化机制生成唯一标识 ...................................................... 156
另一个限界上下文提供唯一标识 .......................................... 160
标识生成时间 ......................................................................... 161
委派标识 ................................................................................. 163
标识稳定性 ............................................................................. 165
发现实体及其本质特征 .................................................................. 167
揭开实体及其本质特征的神秘面纱 ...................................... 168
挖掘实体的关键行为 ............................................................. 172
角色和职责 ............................................................................. 176
创建实体 ................................................................................. 181
验证 ......................................................................................... 183
跟踪变化 ................................................................................. 192
本章小结 ......................................................................................... 192
第6
作者简介
Vaughn Vernon是一个经验丰富的软件工匠,在软件设计、开发和架构方面拥有超过25年的从业经验。 他提倡通过创新来简化软件的设计和实现。从20世纪80年代开始,他便开始使用面向对象语言进行编程;在90年代早期,他便在领域建模中应用了领域驱动设计,那时他使用的是Smalltalk语言。 他在全球范围之内提供软件咨询和演讲,此外,他还在许多国家教授《实现领域驱动设计》的课程。
滕云,ThoughtWorks软件工程师。当初抱着“非飞行器设计专业不读”的理想加幻想考入西北工业大学,却不料学起了汽车专业。在尝尽了“从天上掉到地下”的滋味之后,又转行躬耕于软件开发。目前主要从事银行、保险等领域的企业级软件开发,感兴趣的技术领域包括Java EE、Linux、领域驱动设计和构建自动化等。
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥37.7¥65.0 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥77.4¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
Go 语言运维开发 : Kubernetes 项目实战
¥48.2¥79.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0