Implementing Domain-Driven Design (inbunden)
Fler böcker inom
Format
Inbunden (Hardback)
Språk
Engelska
Antal sidor
656
Utgivningsdatum
2013-02-28
Upplaga
1
Förlag
ADDISON-WESLEY
Illustrationer
Illustrationsstrations
Dimensioner
240 x 185 x 40 mm
Vikt
1158 g
Antal komponenter
1
Komponenter
,
ISBN
9780321834577
Implementing Domain-Driven Design (inbunden)

Implementing Domain-Driven Design

(1 röst)
Inbunden Engelska, 2013-02-28
389
Skickas inom 5-8 vardagar.
Gratis frakt inom Sverige över 159 kr för privatpersoner.
Finns även som
Visa alla 1 format & utgåvor
For software developers of all experience levels looking to improve their results, and design and implement domain-driven enterprise applications consistently with the best current state of professional practice, Implementing Domain-Driven Design will impart a treasure trove of knowledge hard won within the DDD and enterprise application architecture communities over the last couple decades. Randy Stafford, Architect At-Large, Oracle Coherence Product Development

 

This book is a must-read for anybody looking to put DDD into practice.

Udi Dahan, Founder of NServiceBus

 

Implementing Domain-Driven Design presents a top-down approach to understanding domain-driven design (DDD) in a way that fluently connects strategic patterns to fundamental tactical programming tools. Vaughn Vernon couples guided approaches to implementation with modern architectures, highlighting the importance and value of focusing on the business domain while balancing technical considerations.

 

Building on Eric Evans seminal book, Domain-Driven Design, the author presents practical DDD techniques through examples from familiar domains. Each principle is backed up by realistic Java examplesall applicable to C# developersand all content is tied together by a single case study: the delivery of a large-scale Scrum-based SaaS system for a multitenant environment.

 

The author takes you far beyond DDD-lite approaches that embrace DDD solely as a technical toolset, and shows you how to fully leverage DDDs strategic design patterns using Bounded Context, Context Maps, and the Ubiquitous Language. Using these techniques and examples, you can reduce time to market and improve quality, as you build software that is more flexible, more scalable, and more tightly aligned to business goals.

 

Coverage includes

  • Getting started the right way with DDD, so you can rapidly gain value from it
  • Using DDD within diverse architectures, including Hexagonal, SOA, REST, CQRS, Event-Driven, and Fabric/Grid-Based
  • Appropriately designing and applying Entitiesand learning when to use Value Objects instead
  • Mastering DDDs powerful new Domain Events technique
  • Designing Repositories for ORM, NoSQL, and other databases
 
Visa hela texten

Passar bra ihop

  1. Implementing Domain-Driven Design
  2. +
  3. Domain-Driven Design: Tackling Complexity in the Heart of Software

De som köpt den här boken har ofta också köpt Domain-Driven Design: Tackling Complexity in th... av Eric Evans (häftad).

Köp båda 2 för 1048 kr

Kundrecensioner

Har du läst boken? Sätt ditt betyg »

Fler böcker av Vaughn Vernon

Recensioner i media

With Implementing Domain-Driven Design, Vaughn has made an important contribution not only to the literature of the Domain-Driven Design community, but also to the literature of the broader enterprise application architecture field. In key chapters on Architecture and Repositories, for example, Vaughn shows how DDD fits with the expanding array of architecture styles and persistence technologies for enterprise applicationsincluding SOA and REST, NoSQL and data gridsthat has emerged in the decade since Eric Evans seminal book was first published. And, fittingly, Vaughn illuminates the blocking and tackling of DDDthe implementation of entities, value objects, aggregates, services, events, factories, and repositorieswith plentiful examples and valuable insights drawn from decades of practical experience. In a word, I would describe this book as thorough. For software developers of all experience levels looking to improve their results, and design and implement domain-driven enterprise applications consistently with the best current state of professional practice, Implementing Domain-Driven Design will impart a treasure trove of knowledge hard won within the DDD and enterprise application architecture communities over the last couple decades.

Randy Stafford, Architect At-Large, Oracle Coherence Product Development


 

Domain-Driven Design is a powerful set of thinking tools that can have a profound impact on how effective a team can be at building software-intensive systems. The thing is that many developers got lost at times when applying these thinking tools and really needed more concrete guidance. In this book, Vaughn provides the missing links between theory and practice. In addition to shedding light on many of the misunderstood elements of DDD, Vaughn also connects new concepts like Command/Query Responsibility Segregation and Event Sourcing that many advanced DDD practitioners have used with great success. This book is a must-read for anybody looking to put DDD into practice.

Udi Dahan, Founder of NServiceBus


 

For years, developers struggling to practice Domain-Driven Design have been wishing for more practical help in actually implementing DDD. Vaughn did an excellent job in closing the gap between theory and practice with a complete implementation reference. He paints a vivid picture of what it is like to do DDD in a contemporary project, and provides plenty of practical advice on how to approach and solve typical challenges occurring in a project life cycle.

Alberto Brandolini, DDD Instructor, Certified by Eric Evans and Domain Language, Inc.


 

Implementing Domain-Driven Design does a remarkable thing: it takes a sophisticated and substantial topic area in DDD and presents it clearly, with nuance, fun and finesse. This book is written in an engaging and friendly style, like a truste...

Övrig information

Vaughn Vernon is a veteran software craftsman, with more than 25 years of experience in software design, development, and architecture. Vaughn is a thought leader in simplifying software design and implementation using innovative methods in distributed computing. Vaughn has been programming with object-oriented languages since the 1980s and applying the tenets of Domain-Driven Design since his Smalltalk domain modeling days in the early 1990s. His experience spans a wide range of business domains, including aerospace, environmental, geospatial, insurance, medical and health care, and telecommunications. He has also succeeded in technical endeavors creating reusable frameworks, libraries, and implementation acceleration tools. Vaughn consults and speaks internationally, and has taught his Implementing Domain-Driven Design classes on multiple continents. You can read more about his latest efforts at www.VaughnVernon.co and follow him on Twitter here: @VaughnVernon.

Innehållsförteckning

 

Foreword    xvii

Preface xix

Acknowledgments    xxix

About the Author xxxiii

Guide to This Book   xxxv

 

Chapter 1: Getting Started with DDD 1

Can I DDD? 2

Why You Should Do DDD 6

How to Do DDD 20

The Business Value of Using DDD 25

The Challenges of Applying DDD 29

Fiction, with Bucketfuls of Reality 38

Wrap-Up 41

 

Chapter 2: Domains, Subdomains, and Bounded Contexts    43

Big Picture   43

Why Strategic Design Is So Incredibly Essential    53

Real-World Domains and Subdomains 56

Making Sense of Bounded Contexts 62

Sample Contexts 72

Wrap-Up 84

 

Chapter 3: Context Maps 87

Why Context Maps Are So Essential 87

Wrap-Up 111

 

Chapter 4: Architecture 113

Interviewing the Successful CIO 114

Layers   119

Hexagonal or Ports and Adapters 125

Service-Oriented 130

Representational State TransferREST 133

Command-Query Responsibility Segregation, or CQRS 138

Event-Driven Architecture 147

Data Fabric and Grid-Based Distributed Computing 163

Wrap-Up 168

 

Chapter 5: Entities 171

Why We Use Entities 171

Unique Identity 173

Discovering Entities and Their Intrinsic Characteristics 191

Wrap-Up 217

 

Chapter 6: Value Objects   219

Value Characteristics 221

Integrate with Minimalism 232

Standard Types Expressed as Values 234

Testing Value Objects 239

Implementation   243

Persisting Value Objects 248

Wrap-Up 263

 

Chapter 7: Services   265

What a Domain Service Is (but First, What It Is Not) 267

Make Sure You Need a Service 268

Modeling a Service in the Domain 272

Testing Services   281

Wrap-Up 284

 

Chapter 8: Domain Events   285

The When and Why of Domain Events 285

Modeling Events 288

Publishing Events from the Domain Model 296

Spreading the News to Remote Bounded Contexts 303

Event Store 307

Architectural Styles for Forwarding Stored Events 312

Implementation 318

Wrap-Up 331

 

Chapter 9: Modules 333

Designing with Modules 333

Basic Module Naming Conventions 336

Module Naming Conventions for the Model 337

Modules of the Agile Project Management Context   340

Modules in Other Layers 343

Module before Bounded Context 344

Wrap-Up 345

 

Chapter 10: Aggregates 347

Using Aggregates in the Scrum Core Domain 348

Rule: Model True Invariants in Con...