图书介绍

领域驱动设计 软件核心复杂性应对之道 英文版PDF|Epub|txt|kindle电子书版本网盘下载

领域驱动设计 软件核心复杂性应对之道 英文版
  • (美)ERICEVANS著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115224071
  • 出版时间:2010
  • 标注页数:529页
  • 文件大小:25MB
  • 文件页数:552页
  • 主题词:软件设计-英文

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

领域驱动设计 软件核心复杂性应对之道 英文版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

Part Ⅰ Putting the Domain Model to Work1

Chapter 1:Crunching Knowledge7

Ingredients of Effective Modeling12

Knowledge Crunching13

Continuous Learning15

Knowledge-Rich Design17

Deep Models20

Chapter 2:Communication and the Use of Language23

UBIQUITOUS LANGUAGE24

Modeling Out Loud30

One Team,One Language32

Documents and Diagrams35

Written Design Documents37

Executable Bedrock40

Explanatory Models41

Chapter 3:Binding Model and Implementation45

MODEL-DRIVEN DESIGN47

Modeling Paradigms and Tool Support50

Letting the Bones Show:Why Models Matter to Users57

HANDS-ON MODELERS60

Part Ⅱ The Building Blocks of a Model-Driven Design63

Chapter 4:Isolating the Domain67

LAYERED ARCHITECTURE68

Relating the Layers72

Architectural Frameworks74

The Domain Layer Is Where the Model Lives75

THE SMART UI"ANTI-PATTERN"76

Other Kinds of Isolation79

Chapter 5:A Model Expressed in Software81

Associations82

ENTITIES(A.K.A.REFERENCE OBJECTS)89

Modeling ENTITIES93

Designing the Identity Operation94

VALUE OBJECTS97

Designing VALUE OBJECTS99

Designing Associations That Involve VALUE OBJECTS102

SERVICES104

SERVICES and the Isolated Domain Layer106

Granularity108

Access to SERVICES108

MODULES(A.K.A.PACKAGES)109

Agile MODULES111

The Pitfalls of Infrastructure-Driven Packaging112

Modeling Paradigms116

Why the Object Paradigm Predominates116

Nonobjects in an Object World119

Sticking with MODEL-DRIVEN DESIGN When Mixing Paradigms120

Chapter 6:The Life Cycle of a Domain Object123

AGGREGATES125

FACTORIES136

Choosing FACTORIES and Their Sites139

When a Constructor Is All You Need141

Designing the Interface143

Where Does Invariant Logic Go?144

ENTITY FACTORIES Versus VALUE OBJECT FACTORIES144

Reconstituting Stored Objects145

REPOSITORIES147

Querying a REPOSITORY152

Client Code Ignores REPOSITORY Implementation;Developers Do Not154

Implementing a REPOSITORY155

Working Within Your Frameworks156

The Relationship with FACTORIES157

Designing Objects for Relational Databases159

Chapter 7:Using the Language:An Extended Example163

Introducing the Cargo Shipping System163

Isolating the Domain:Introducing the Applications166

Distinguishing ENTITIES and VALUE OBJECTS167

Role and Other Attributes168

Designing Associations in the Shipping Domain169

AGGREGATE Boundaries170

Selecting REPOSITORIES172

Walking Through Scenarios173

Sample Application Feature:Changing the Destination of a Cargo173

Sample Application Feature:Repeat Business173

Object Creation174

FACTORIES and Constructors for Cargo174

Adding a Handling Event175

Pause for Refactoring:An Alternative Design of the Cargo AGGREGATE177

MODULES in the Shipping Model179

Introducing a New Feature:Allocation Checking181

Connecting the Two Systems182

Enhancing the Model:Segmenting the Business183

Performance Tuning185

A Final Look186

Part Ⅲ Refactoring Toward Deeper Insight187

Chapter 8:Breakthrough193

Story of a Breakthrough194

A Decent Model,and Yet...194

The Breakthrough196

A Deeper Model198

A Sobering Decision199

The Payoff200

Opportunities201

Focus on Basics201

Epilogue:A Cascade of New Insights202

Chapter 9:Making Implicit Concepts Explicit205

Digging Out Concepts206

Listen to Language206

Scrutinize Awkwardness210

Contemplate Contradictions216

Read the Book217

Try,Try Again219

How to Model Less Obvious Kinds of Concepts219

Explicit Constraints220

Processes as Domain Objects222

SPECIFICATION224

Applying and Implementing SPECIFICATION227

Chapter 10:Supple Design243

INTENTION-REVEALING INTERFACES246

SIDE-EFFECT-FREE FUNCTIONS250

ASSERTIONS255

CONCEPTUAL CONTOURS260

STANDALONE CLASSES265

CLOSURE OF OPERATIONS268

Declarative Design270

Domain-Specific Languages272

A Declarative Style of Design273

Extending SPECIFICATIONS in a DPclarative Style273

Angles of Attack282

Carve Off Subdomams283

Draw on Established Formalisms,When You Can283

Chapter 11:Applying Analysis Patterns293

Chapter 12:Relating Design Patterns to the Model309

STRATEGY (A.K.A.POLICY)311

COMPOSITE315

Why Not FLYWEIGHT?320

Chapter 13:Refactoring Toward Deeper Insight321

Initiation321

Exploration Teams322

Prior Art323

A Design for Developers324

Timing324

Crisis as Opportunity325

Part Ⅳ Strategic Design327

Chapter 14:Maintaining Model Integrity331

BOUNDED CONTEXT335

Recognizing Splinters Within a BOUNDED CONTEXT339

CONTINUOUS INTEGRATION341

CONTEXT MAP344

Testing at the CONTEXT Boundaries351

Organizing and Documenting CONTEXT MAPS351

Relationships Between BOUNDED CONTEXTS352

SHARED KERNEL354

CUSTOMER/SUPPLIER DEVELOPMENT TEAMS356

CONFORMIST361

ANTICORRUPTION LAYER364

Designing the Interface of the ANTICORRUPTION LAYER366

Implementing the ANTICORRUPTION LAYER366

A Cautionary Tale370

SEPARATE WAYS371

OPEN HOST SERVICE374

PUBLISHED LANGUAGE375

Unifying an Elephant378

Choosing Your Model Context Strategy381

Team Decision or Higher382

Putting Ourselves in Context382

Transforming Boundaries382

Accepting That Whicb We Cannot Change:Delineating the External Systems383

Relationships with the External Systems384

The System Under Design385

Catering to Special Needs with Distinct Models386

Deployment387

The Trade-off388

Whee Your Project Is Already Under Way388

Transformations389

Merging CONTEXTS:SEPARATE WAYS→SHARED KERNEL389

Merging CONTEXTS:SHARED KERNEL→CONTINUOUS INTEGRATION391

Phasing Out a Legacy System393

OPEN HOST SERVICE→PUBLISHED LANGUAGE394

Chapter 15:Distillation397

CORE DOMAIN400

Choosing the CORE402

Who Does the Work?403

An Escalation of Distillations404

GENERIC SUBDOMAINS406

Generic Doesn't Mean Reusable412

Project Risk Management413

DOMAIN VISION STATEMENT415

HIGHLIGHTED CORE417

The Distillation Document418

The Flagged CORE419

The Distillation Document as Process Tool420

COHESIVE MECHANISMS422

GENERIC SUBDOMAIN Versus COHESIVE MECHANISM424

When a MECHANISM Is Part of the CORE DOMAIN425

Distilling to a Declarative Style426

SEGREGATED CORE428

The Costs of Creating a SEGREGATED CORE429

Evolving Team Decision430

ABSTRACT CORE435

Deep Models Distill436

Choosing Refactoring Targets437

Chapter 16:Large-Scale Structure439

EVOLVING ORDER444

SYSTEM METAPHOR447

The "Naive Metaphor" and Why We Don't Need It448

RESPONSIBILITY LAYERS450

Choosing Appropriate Layers460

KNOWLEDGE LEVEL465

PLUGGABLE COMPONENT FRAMEWORK475

How Restrictive Should a Structure Be?480

Refactoring Toward a Fitting Structure481

Minimalism481

Communication and Self-Discipline482

Restructuring Yields Supple Design482

Distillation Lightens the Load483

Chapter 17:Bringing the Strategy Together485

Combining Large-Scale Structures and BOUNDED CONTEXTS485

Combining Large-Scale Structures and Distillation488

Assessment First490

Who Sets the Strategy?490

Emergent Structure from Application Development491

A Customer-Focused Architecture Team492

SiX Essentials for Strategic Design Decision Making492

The Same Goes for the Technical Frameworks495

Bewart the Master Plan496

Conclusion499

Appendix:The Use of Patterns in This Book507

Glossary511

References515

Photo Credits517

Index519

热门推荐