您好,欢迎来到聚文网。
登录
免费注册
网站首页
|
搜索
热搜:
磁力片
|
漫画
|
购物车
0
我的订单
商品分类
首页
幼儿
文学
社科
教辅
生活
销量榜
复杂软件设计之道 领域驱动设计全面解析与实战
字数: 541000
装帧: 平装
出版社: 机械工业出版社
出版日期: 2020-08-01
商品条码: 9787111661122
版次: 1
开本: 16开
页数: 352
出版年份: 2020
定价:
¥119
销售价:
登录后查看价格
¥{{selectedSku?.salePrice}}
库存:
{{selectedSku?.stock}}
库存充足
{{item.title}}:
{{its.name}}
加入购物车
立即购买
加入书单
收藏
精选
¥5.83
世界图书名著昆虫记绿野仙踪木偶奇遇记儿童书籍彩图注音版
¥5.39
正版世界名著文学小说名家名译中学生课外阅读书籍图书批发 70册
¥8.58
简笔画10000例加厚版2-6岁幼儿童涂色本涂鸦本绘画本填色书正版
¥5.83
世界文学名著全49册中小学生青少年课外书籍文学小说批发正版
¥4.95
全优冲刺100分测试卷一二三四五六年级上下册语文数学英语模拟卷
¥8.69
父与子彩图注音完整版小学生图书批发儿童课外阅读书籍正版1册
¥24.2
好玩的洞洞拉拉书0-3岁宝宝早教益智游戏书机关立体翻翻书4册
¥7.15
幼儿认字识字大王3000字幼儿园中班大班学前班宝宝早教启蒙书
¥11.55
用思维导图读懂儿童心理学培养情绪管理与性格培养故事指导书
¥19.8
少年读漫画鬼谷子全6册在漫画中学国学小学生课外阅读书籍正版
¥64
科学真好玩
¥12.7
一年级下4册·读读童谣和儿歌
¥38.4
原生态新生代(传统木版年画的当代传承国际研讨会论文集)
¥11.14
法国经典中篇小说
¥11.32
上海的狐步舞--穆时英(中国现代文学馆馆藏初版本经典)
¥21.56
猫的摇篮(精)
¥30.72
幼儿园特色课程实施方案/幼儿园生命成长启蒙教育课程丛书
¥24.94
旧时风物(精)
¥12.04
三希堂三帖/墨林珍赏
¥6.88
寒山子庞居士诗帖/墨林珍赏
¥6.88
苕溪帖/墨林珍赏
¥6.88
楷书王维诗卷/墨林珍赏
¥9.46
兰亭序/墨林珍赏
¥7.74
祭侄文稿/墨林珍赏
¥7.74
蜀素帖/墨林珍赏
¥12.04
真草千字文/墨林珍赏
¥114.4
进宴仪轨(精)/中国古代舞乐域外图书
¥24.94
舞蹈音乐的基础理论与应用
编辑推荐
为读者提供更加清晰的DDD知识脉络,各个击破、详细解析; 讲解过程伴随实例代码,让读者的学习过程更加轻松; 包含原著以外的DDD社区新发展,基于截至2020年初的全新、全面DDD思想/方法体系编写; 推荐作为原著学习伴侣,在实践中反复学习与思考。
内容简介
领域驱动设计简称DDD,《复杂软件设计之道:领域驱动设计全面解析与实战》前6章全面解析了DDD的分析方法和技术架构,包括领域驱动设计基础、领域驱动战略设计(有界上下文和统一语言)、聚合设计、实体和值对象、CQRS架构和事件溯源,第7章使用经典的货物运输系统案例进行了完整、详细的综合演示。
《复杂软件设计之道:领域驱动设计全面解析与实战》同时引入了DDD的*新发展成果,如事件风暴建模,并以此建模方式替代传统的DDD建模方式讲解了多个案例。还涉及大量软件系统实现相关的技术和架构,读者在学习DDD的同时,也可以掌握这些技术、架构在DDD实现中的灵活应用。
另外,每个概念或方法的讲解过程都穿插了具体实例,以方便读者结合实例进行学习;第2~7章每章*后都有总结与拓展,将本章涉及的案例和知识进行总结,并引入国际DDD专家的心得经验,试图告诉读者一条DDD实战中行之有效的途径。
《复杂软件设计之道:领域驱动设计全面解析与实战》主要面向拥有一定实践经验的软件产品经理、领域专家、软件设计开发相关从业人员,相关初级从业者也可阅读本书。
作者简介
彭晨阳,常用网名板桥(bang),DDD等软件架构专研网站——解道(Jdon)的创办者,长期关注国内外软件架构思想和设计开发的新动向,自DDD提出以来,持续研究与实践DDD。 行业经验——具有近30年的软件系统设计与开发经验,以及丰富的领域实战经验,包括ERP、电子商务、政务、电力、银行、大型游戏等。 培训经历——致力于传播软件设计开发新思想、新技术,曾为近百家企业提供培训咨询服务,包括华为、阿里等企业。 擅长方向——系统架构设计与实现,设计模式与框架,并发编程和微服务、区块链等分布式系统与事务。擅长复杂系统的软件架构和领域建模。
目录
前言
第1章领域驱动设计基础1
1.1领域驱动设计的起源与发展1
1.1.1程序员为难之处1
1.1.2技术负债与软件质量3
1.1.3ER数据建模与面向对象建模4
1.1.4DDD的诞生和发展6
1.2领域驱动设计的特点9
1.2.1发现和理解问题10
1.2.2领域即边界13
1.2.3解决复杂性15
1.2.4新的数据结构设计方式17
1.2.5需要注重产品的程序员18
1.3领域驱动设计的难点20
1.3.1业务策略和业务规则21
1.3.2统一语言与有界上下文25
1.3.3领域模型的提炼26
1.4领域驱动设计的应用场景29
1.4.1哪些应用不适合?30
1.4.2适合微服务架构30
第2章领域驱动战略设计31
2.1有界上下文31
2.1.1统一语言:统一项目中的交流语言32
2.1.2如何发现有界上下文和统一语言?34
2.1.3有界上下文之间的关系36
2.1.4核心子域、支持子域与通用子域37
2.1.5实例解析:电费结算系统38
2.2按时间线发现有界上下文40
2.2.1UML时序图40
2.2.2实例解析:电商领域之商品管理上下文41
2.3通过领域故事或流程发现有界上下文45
2.4通过事件风暴会议发现有界上下文48
2.4.1领域事件50
2.4.2命令51
2.4.3事件风暴建模法53
2.4.4实例解析:一个典型的事件风暴建模议程56
2.5业务平台与中台设计60
2.6总结与拓展62
第3章聚合设计68
3.1聚合设计的概念68
3.1.1高聚合低关联71
3.1.2聚合的逻辑一致性74
3.2设计聚合的几种方法77
3.2.1改变主谓宾顺序78
3.2.2根据领域事件设计聚合79
3.2.3根据单一职责设计聚合81
3.2.4按时间边界设计聚合83
3.2.5通过事务边界设计聚合87
3.2.6通过ER模型设计聚合89
3.3实例解析:订单系统中的聚合设计95
3.3.1信息拥有者模式97
3.3.2引用模式99
3.3.3奥卡姆剃刀原理100
3.3.4控制者模式101
3.3.5订单状态集中控制实现103
3.3.6做什么和怎么做的分离106
3.3.7在服务中验证聚合107
3.3.8SpringBoot实现110
3.4总结与拓展115
第4章实体和值对象121
4.1失血/贫血模型121
4.2实体124
4.2.1实体的标识125
4.2.2实体的设计126
4.2.3实体对象的创建128
4.3值对象131
4.3.1值对象与实体的区别134
4.3.2用值对象重构138
4.4领域服务140
4.4.1领域服务的特征141
4.4.2领域服务与应用服务144
4.5仓储147
4.5.1自行实现仓储148
4.5.2结合Builder模式实现仓储151
4.6充血模型的设计原则154
4.6.1将公有setter方法变为私有155
4.6.2注重对象的构建157
4.7实例解析:论坛系统实体和值对象设计159
4.7.1聚合根实体是什么?161
4.7.2值对象的设计164
4.7.3状态设计167
4.7.4发帖功能实现170
4.7.5双聚合根173
4.7.6分配职责行为176
4.7.7构建对象必须遵循专享性179
4.8总结与拓展184
第5章CQRS架构186
5.1DDD架构介绍187
5.1.1MVC模式187
5.1.2传统三层架构188
5.1.3传统DDD分层架构191
5.1.4清洁架构194
5.1.5六边形架构198
5.1.6垂直切片架构201
5.2CQRS架构的特点203
5.3命令和查询分离205
5.3.1查询模型实现206
5.3.2命令模型实现210
5.3.3Command对象212
5.3.4命令和查询的协作216
5.4不同的数据访问方式219
5.4.1查询端存储实现220
5.4.2规格模式221
5.4.3命令与查询的同步224
5.5CAP定理226
5.6领域事件实现数据同步227
5.7实例解析:使用Axon框架实现CQRS231
5.7.1命令端实现233
5.7.2查询端实现236
5.8总结与拓展237
第6章事件溯源241
6.1什么是事件溯源?242
6.2基于事件溯源的聚合根设计249
6.2.1用事件替代状态249
6.2.2活动与事件253
6.3事件溯源的优点260
6.3.1替代分布式事务261
6.3.2事件日志的顺序性263
6.3.3基于事件日志的消息系统265
6.4微服务中的分布式事务实现266
6.4.1引入Saga模式267
6.4.2Saga分布式事务原理267
6.4.3实例解析:账户转账271
6.5使用ApacheKafka实现事件溯源275
6.6投射模式280
6.7更改数据捕获(CDC)282
6.8总结与拓展285
第7章货物运输系统290
7.1领域描述290
7.2从流程中发现领域事件294
7.2.1受理流程295
7.2.2作业流程298
7.3概念挖掘301
7.3.1划分有界上下文302
7.3.2预订受理上下文304
7.3.3运输作业上下文306
7.4预订受理的聚合设计309
7.4.1聚合的发现和命名309
7.4.2聚合设计313
7.4.3状态设计316
7.4.4命令与事件设计317
7.4.5代码实现320
7.4.6设计和实现的差异325
7.5运输作业的聚合设计327
7.5.1命令、事件和聚合328
7.5.2有界上下文映射331
7.5.3聚合重构设计334
7.6总结与拓展336
×
Close
添加到书单
加载中...
点此新建书单
×
Close
新建书单
标题:
简介:
蜀ICP备2024047804号
Copyright 版权所有 © jvwen.com 聚文网