中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊
> >
領域驅動設計:軟件核心復雜性應對之道

包郵 領域驅動設計:軟件核心復雜性應對之道

出版社:人民郵電出版社出版時間:2010-04-01
所屬叢書: 圖靈程序設計叢書
開本: 16開 頁數: 529
中 圖 價:¥57.4(7.0折) 定價  ¥82.0 登錄后可看到會員價
暫時缺貨 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>

領域驅動設計:軟件核心復雜性應對之道 版權信息

領域驅動設計:軟件核心復雜性應對之道 本書特色

眾多世界級軟件大師鼎力推薦
  凝聚領域建模專家數十年的實戰經驗
  深度剖析構建高質量復雜系統的核心技術

領域驅動設計:軟件核心復雜性應對之道 內容簡介

領域模型使開發人員可以表達豐富的軟件功能需求,由此實現的軟件可以滿足用戶真正的需要,因此被公認為是軟件設計的關鍵所在,其重要性顯而易見。但講述如何將領域模型用于軟件開發過程的優秀實用資料卻不多見。本書正是這一領域*著名的作品,受到眾多業界大師的贊美和推介,廣受讀者好評。
  要通過創建領域模型來加速復雜的軟件開發,就需要利用大量*佳實踐和標準模式在開發團隊中形成統一的交流語言;不僅重構代碼,而且要重構代碼底層的模型;同時采取反復迭代的敏捷開發方法,深入理解領域特點,促進領域專家與程序員的良好溝通。針對這些內容,本書結合真實項目,系統地介紹了領域驅動開發的目標、意義和方法,充分討論了復雜系統的建模與設計問題。
  本書將指導面向對象開發人員、系統分析人員和設計人員合理地組織工作,各有側重、彼此協作,有條不紊地進行復雜系統的開發,幫助他們建立豐富而實用的領域模型,并由此創建長期適用的優質軟件。

領域驅動設計:軟件核心復雜性應對之道 目錄

part i
putting the domain model to work 1
chapter 1: crunching knowledge 7
ingredients of effective modeling 12
knowledge crunching 13
continuous learning 15
knowledge-rich design 17
deep models 20
chapter 2: communication and the use of language 23
ubiquitous language 24
modeling out loud 30
one team, one language 32
documents and diagrams 35
written design documents 37
executable bedrock 40
explanatory models 41
chapter 3: binding model and implementation 45
model-driven design 47
modeling paradigms and tool support 50
letting the bones show: why models matter to users 57
hands-on modelers 60
part ii
the building blocks of a model-driven design 63
chapter 4: isolating the domain 67
layered architecture 68
relating the layers 72
architectural frameworks 74
the domain layer is where the model lives 75
the smart ui “anti-pattern” 76
other kinds of isolation 79
chapter 5: a model expressed in software 81
associations 82
entities (a.k.a. reference objects) 89
modeling entities 93
designing the identity operation 94
value objects 97
designing value objects 99
designing associations that involve value objects 102
services 104
services and the isolated domain layer 106
granularity 108
access to services 108
modules (a.k.a. packages) 109
agile modules 111
the pitfalls of infrastructure-driven packaging 112
modeling paradigms 116
why the object paradigm predominates 116
nonobjects in an object world 119
sticking with model-driven design when
mixing paradigms 120
chapter 6: the life cycle of a domain object 123
aggregates 125
factories 136
choosing factories and their sites 139
when a constructor is all you need 141
designing the interface 143
where does invariant logic go? 144
entity factories versus value object factories 144
reconstituting stored objects 145
repositories 147
querying a repository 152
client code ignores repository implementation;
developers do not 154
implementing a repository 155
working within your frameworks 156
the relationship with factories 157
designing objects for relational databases 159
chapter 7: using the language: an extended example 163
introducing the cargo shipping system 163
isolating the domain: introducing the applications 166
distinguishing entities and value objects 167
role and other attributes 168
designing associations in the shipping domain 169
aggregate boundaries 170
selecting repositories 172
walking through scenarios 173
sample application feature: changing the destination
of a cargo 173
sample application feature: repeat business 173
object creation 174
factories and constructors for cargo 174
adding a handling event 175
pause for refactoring: an alternative design of the
cargo aggregate 177
modules in the shipping model 179
introducing a new feature: allocation checking 181
connecting the two systems 182
enhancing the model: segmenting the business 183
performance tuning 185
a final look 186
part iii
refactoring toward deeper insight 187
chapter 8: breakthrough 193
story of a breakthrough 194
a decent model, and yet . . . 194
the breakthrough 196
a deeper model 198
a sobering decision 199
the payoff 200
opportunities 201
focus on basics 201
epilogue: a cascade of new insights 202
chapter 9: making implicit concepts explicit 205
digging out concepts 206
listen to language 206
scrutinize awkwardness 210
contemplate contradictions 216
read the book 217
try, try again 219
how to model less obvious kinds of concepts 219
explicit constraints 220
processes as domain objects 222
specification 224
applying and implementing specification 227
chapter 10: supple design 243
intention-revealing interfaces 246
side-effect-free functions 250
assertions 255
conceptual contours 260
standalone classes 265
closure of operations 268
declarative design 270
domain-specific languages 272
a declarative style of design 273
extending specifications in a declarative style 273
angles of attack 282
carve off subdomains 283
draw on established formalisms, when you can 283
chapter 11: applying analysis patterns 293
chapter 12: relating design patterns to the model 309
strategy (a.k.a. policy) 311
composite 315
why not flyweight? 320
chapter 13: refactoring toward deeper insight 321
initiation 321
exploration teams 322
prior art 323
a design for developers 324
timing 324
crisis as opportunity 325
part iv
strategic design 327
chapter 14: maintaining model integrity 331
bounded context 335
recognizing splinters within a bounded context 339
continuous integration 341
context map 344
testing at the context boundaries 351
organizing and documenting context maps 351
relationships between bounded contexts 352
shared kernel 354
customer/supplier development teams 356
conformist 361
anticorruption layer 364
designing the interface of the anticorruption layer 366
implementing the anticorruption layer 366
a cautionary tale 370
separate ways 371
open host service 374
published language 375
unifying an elephant 378
choosing your model context strategy 381
team decision or higher 382
putting ourselves in context 382
transforming boundaries 382
accepting that which we cannot change: delineating
the external systems 383
relationships with the external systems 384
the system under design 385
catering to special needs with distinct models 386
deployment 387
the trade-off 388
when your project is already under way 388
transformations 389
merging contexts: separate ways ? shared kernel 389
merging contexts: shared kernel ? continuous
integration 391
phasing out a legacy system 393
open host service ? published language 394
chapter 15: distillation 397
core domain 400
choosing the core 402
who does the work? 403
an escalation of distillations 404
generic subdomains 406
generic doesn’t mean reusable 412
project risk management 413
domain vision statement 415
highlighted core 417
the distillation document 418
the flagged core 419
the distillation document as process tool 420
cohesive mechanisms 422
generic subdomain versus cohesive mechanism 424
when a mechanism is part of the core domain 425
distilling to a declarative style 426
segregated core 428
the costs of creating a segregated core 429
evolving team decision 430
abstract core 435
deep models distill 436
choosing refactoring targets 437
chapter 16: large-scale structure 439
evolving order 444
system metaphor 447
the “naive metaphor” and why we don’t need it 448
responsibility layers 450
choosing appropriate layers 460
knowledge level 465
pluggable component framework 475
how restrictive should a structure be? 480
refactoring toward a fitting structure 481
minimalism 481
communication and self-discipline 482
restructuring yields supple design 482
distillation lightens the load 483
chapter 17: bringing the strategy together 485
combining large-scale structures and bounded contexts 485
combining large-scale structures and distillation 488
assessment first 490
who sets the strategy? 490
emergent structure from application development 491
a customer-focused architecture team 492
six essentials for strategic design decision making 492
the same goes for the technical frameworks 495
beware the master plan 496
conclusion 499
appendix: the use of patterns in this book 507
glossary 511
references 515
photo credits 517
index 519
展開全部

領域驅動設計:軟件核心復雜性應對之道 節選

《領域驅動設計:軟件核心復雜性應對之道(英文版)》是領域驅動設計領域的經典之作。全書圍繞著設計和開發實踐,結合若干真實的項目案例,向讀者闡述如何在真實的軟件開發中應用領域驅動設計。書中給出了領域驅動設計的系統化方法,并將人們普遍接受的一些*佳實踐綜合到一起,融入了作者的見解和經驗,展現了一些可擴展的設計*佳實踐、經驗驗證過的技術以及便于應對復雜領域的軟件項目開發的基本原則。《領域驅動設計:軟件核心復雜性應對之道(英文版)》適合各層次的面向對象軟件開發人員、系統分析員閱讀。

領域驅動設計:軟件核心復雜性應對之道 相關資料

這本書應該出現在每個軟件開發人員的書架上。       ——kent beck,軟件開發方法學的泰斗,極限編程的創始人   eric的這本書太棒太神奇了,他準確地告訴你如何讓軟件設計滿足你理想中的模型需求。……本書讀起來趣味無窮,eric有許多有趣的故事,而且描述起來很有一套。它出版后將成為軟件開發人員必讀的經典之作。       ——ralph johnson,《設計模式》的作者   如果你認為自己在面向對象編程中的投資沒有收到回報,那么讀了本書你就會知道自己漏掉了什么。       ——ward cunningham, 設計模式和敏捷軟件方法的先驅   eric evans力證作為開發核心的領域模型的重要性,他搭建了一個穩固的框架并提供了一套實現技術和技巧。這里沉淀下來的是亙古不變的智慧,在應時的方法論都淪為明日黃花后,它依然光華璀璨。       ——dave collins,designing object-oriented user interfaces的作者   eric完全從實戰者的角度著筆,描述了無處不用的語言、與用戶共享模型的好處、對象生命周期的管理、深度重構的過程和結果,這是對我們這個領域的巨大貢獻。       ——luke hohmann,beyond software architecture的作者

領域驅動設計:軟件核心復雜性應對之道 作者簡介

Eric Evans世界著名軟件建模專家,創建了Domain Language公司,致力于幫助公司機構創建與業務緊密相關的軟件。他在全球各地宣講領域驅動設計的思想,開設課程、參加會議、接受專訪,擁有大批的追隨者。從20世紀80年代開始,他就以設計師和程序員的雙重身份參與過許多大型面向對象系統的設計和開發,涉及各種復雜的業務和技術領域。同時,他還培訓和指導過許多開發團隊開展極限編程實踐。

商品評論(0條)
暫無評論……
書友推薦
本類暢銷
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 低温等离子清洗机(双气路进口)-嘉润万丰 | 油罐车_加油机_加油卷盘_加油机卷盘_罐车人孔盖_各类球阀_海底阀等车用配件厂家-湖北华特专用设备有限公司 | 东莞螺杆空压机_永磁变频空压机_节能空压机_空压机工厂批发_深圳螺杆空压机_广州螺杆空压机_东莞空压机_空压机批发_东莞空压机工厂批发_东莞市文颖设备科技有限公司 | 客服外包专业服务商_客服外包中心_网萌科技 | 衬氟旋塞阀-卡套旋塞阀-中升阀门首页 | 雷达液位计_超声波风速风向仪_雨量传感器_辐射传感器-山东风途物联网 | 贵州水玻璃_-贵阳花溪闽兴水玻璃厂 | 土壤肥料养分速测仪_测土配方施肥仪_土壤养分检测仪-杭州鸣辉科技有限公司 | 无味渗透剂,泡沫抑尘剂,烷基糖苷-威海威能化工有限公司 | 华夏医界网_民营医疗产业信息平台_民营医院营销管理培训 | 德国BOSCH电磁阀-德国HERION电磁阀-JOUCOMATIC电磁阀|乾拓百科 | 上海租车公司_上海包车_奔驰租赁_上海商务租车_上海谐焕租车 | 南京展台搭建-南京展会设计-南京展览设计公司-南京展厅展示设计-南京汇雅展览工程有限公司 | 电缆接头_防水接头_电缆防水接头_防水电缆接头_上海闵彬 | 实验室装修_实验室设计_实验室规划设计- 上海广建净化工程公司 | 除湿机|工业除湿机|抽湿器|大型地下室车间仓库吊顶防爆除湿机|抽湿烘干房|新风除湿机|调温/降温除湿机|恒温恒湿机|加湿机-杭州川田电器有限公司 | 标准光源箱|对色灯箱|色差仪|光泽度仪|涂层测厚仪_HRC大品牌生产厂家 | 代办建筑资质升级-建筑资质延期就找上海国信启航 | 潍坊大集网-潍坊信息港-潍坊信息网 | 生物风-销售载体,基因,质粒,ATCC细胞,ATCC菌株等,欢迎购买-百风生物 | 不锈钢管件(不锈钢弯头,不锈钢三通,不锈钢大小头),不锈钢法兰「厂家」-浙江志通管阀 | 新型游乐设备,360大摆锤游乐设备「诚信厂家」-山东方鑫游乐设备 新能源汽车电池软连接,铜铝复合膜柔性连接,电力母排-容发智能科技(无锡)有限公司 | 数控走心机-双主轴走心机厂家-南京建克 | app开发|app开发公司|小程序开发|物联网开发||北京网站制作|--前潮网络 | 舞台木地板厂家_体育运动木地板_室内篮球馆木地板_实木运动地板厂家_欧氏篮球地板推荐 | 建筑消防设施检测系统检测箱-电梯**检测仪器箱-北京宇成伟业科技有限责任公司 | 工业车间焊接-整体|集中除尘设备-激光|等离子切割机配套除尘-粉尘烟尘净化治理厂家-山东美蓝环保科技有限公司 | 搅拌磨|搅拌球磨机|循环磨|循环球磨机-无锡市少宏粉体科技有限公司 | 西点培训学校_法式西点培训班_西点师培训_西点蛋糕培训-广州烘趣西点烘焙培训学院 | 广东恩亿梯电源有限公司【官网】_UPS不间断电源|EPS应急电源|模块化机房|电动汽车充电桩_UPS电源厂家(恩亿梯UPS电源,UPS不间断电源,不间断电源UPS) | 华东师范大学在职研究生招生网_在职研究生招生联展网 | 选矿设备-新型重选设备-金属矿尾矿重选-青州冠诚重工机械有限公司 | 氟氨基酮、氯硝柳胺、2-氟苯甲酸、异香兰素-新晨化工 | 上海乾拓贸易有限公司-日本SMC电磁阀_德国FESTO电磁阀_德国FESTO气缸 | 婚博会2024时间表_婚博会门票领取_婚博会地址-婚博会官网 | 沥青灌缝机_路面灌缝机_道路灌缝机_沥青灌缝机厂家_济宁萨奥机械有限公司 | 硅PU球场、篮球场地面施工「水性、环保、弹性」硅PU材料生产厂家-广东中星体育公司 | 电缆桥架生产厂家_槽式/梯式_热镀锌线槽_广东东莞雷正电气 | 大通天成企业资质代办_承装修试电力设施许可证_增值电信业务经营许可证_无人机运营合格证_广播电视节目制作许可证 | 北京三友信电子科技有限公司-ETC高速自动栏杆机|ETC机柜|激光车辆轮廓测量仪|嵌入式车道控制器 | 深圳市八百通智能技术有限公司官方网站 |