Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your email address or mobile phone number.

Implementing Domain-Driven Design 1st Edition

4.3 out of 5 stars 54 customer reviews
ISBN-13: 860-1404568893
ISBN-10: 0321834577
Why is ISBN important?
ISBN
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
Trade in your item
Get a $18.10
Gift Card.
Have one to sell? Sell on Amazon
Rent On clicking this link, a new layer will be open
$25.08 On clicking this link, a new layer will be open
Buy used On clicking this link, a new layer will be open
$41.79 On clicking this link, a new layer will be open
Buy new On clicking this link, a new layer will be open
$46.43 On clicking this link, a new layer will be open
More Buying Choices
49 New from $35.87 26 Used from $37.55
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


Barron's
Navigate global markets with Barron's digital membership Learn more
$46.43 FREE Shipping. In Stock. Ships from and sold by Amazon.com. Gift-wrap available.
click to open popover

Frequently Bought Together

  • Implementing Domain-Driven Design
  • +
  • Domain-Driven Design: Tackling Complexity in the Heart of Software
  • +
  • Domain-Driven Design Reference: Definitions and Pattern Summaries
Total price: $116.31
Buy the selected items together

Editorial Reviews

Review

“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 applications—including SOA and REST, NoSQL and data grids—that has emerged in the decade since Eric Evans’ seminal book was first published. And, fittingly, Vaughn illuminates the blocking and tackling of DDD—the implementation of entities, value objects, aggregates, services, events, factories, and repositories—with 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 trusted advisor giving you expert counsel on how to accomplish what is most important. By the time you finish the book you will be able to begin applying all the important concepts of DDD, and then some. As I read, I found myself highlighting many sections . . . I will be referring back to it, and recommending it, often.”

— Paul Rayner, Principal Consultant & Owner, Virtual Genius, LLC., DDD Instructor, Certified by Eric Evans and Domain Language, Inc., DDD Denver Founder and Co-leader

“One important part of the DDD classes I teach is discussing how to put all the ideas and pieces together into a full blown working implementation. With this book, the DDD community now has a comprehensive reference that addresses this in detail. Implementing Domain-Driven Design deals with all aspects of building a system using DDD, from getting the small details right to keeping track of the big picture. This is a great reference and an excellent companion to Eric Evans seminal DDD book.”

— Patrik Fredriksson, DDD Instructor, Certified by Eric Evans and Domain Language, Inc.


 

“If you care about software craftsmanship—and you should—then Domain-Driven Design is a crucial skill set to master and Implementing Domain-Driven Design is the fast path to success. IDDD offers a highly readable yet rigorous discussion of DDD’s strategic and tactical patterns that enables developers to move immediately from understanding to action. Tomorrow’s business software will benefit from the clear guidance provided by this book.”

—Dave Muirhead, Principal Consultant, Blue River Systems Group


 

“There’s theory and practice around DDD that every developer needs to know, and this is the missing piece of the puzzle that puts it all together. Highly recommended!”

—Rickard Öberg, Java Champion and Developer at Neo Technology


 

“In IDDD, Vaughn takes a top-down approach to DDD, bringing strategic patterns such as bounded context and context maps to the fore, with the building block patterns of entities, values and services tackled later. His book uses a case study throughout, and to get the most out of it you’ll need to spend time grokking that case study. But if you do you’ll be able to see the value of applying DDD to a complex domain; the frequent sidenotes, diagrams, tables, and code all help illustrate the main points. So if you want to build a solid DDD system employing the architectural styles most commonly in use today, Vaughn’s book comes recommended.”

—Dan Haywood, author of Domain-Driven Design with Naked Objects


 

“This book employs a top-down approach to understanding DDD in a way that fluently connects strategic patterns to lower level tactical constraints. Theory is coupled with guided approaches to implementation within modern architectural styles. Throughout the book, Vaughn highlights the importance and value of focusing on the business domain all while balancing technical considerations. As a result, the role of DDD, as well as what it does and perhaps more importantly doesn’t imply, become ostensibly clear. Many a time, my team and I would be at odds with the friction encountered in applying DDD. With Implementing Domain-Driven Design as our luminous guide we were able to overcome those challenges and translate our efforts into immediate business value.”

—Lev Gorodinski, Principal Architect, DrillSpot.com

About the Author

Vaughn Vernon is a veteran software craftsman with more than twenty-five years of experience in software design, development, and architecture. He is a thought leader in simplifying software design and implementation using innovative methods. He 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. He consults and speaks internationally, and has taught his Implementing Domain-Driven Design classes on multiple continents.

 

NO_CONTENT_IN_FEATURE


Product Details

  • Hardcover: 656 pages
  • Publisher: Addison-Wesley Professional; 1 edition (February 16, 2013)
  • Language: English
  • ISBN-10: 0321834577
  • ISBN-13: 978-0321834577
  • Product Dimensions: 7.1 x 1.7 x 9.2 inches
  • Shipping Weight: 2.5 pounds (View shipping rates and policies)
  • Average Customer Review: 4.3 out of 5 stars  See all reviews (54 customer reviews)
  • Amazon Best Sellers Rank: #165,801 in Books (See Top 100 in Books)

Customer Reviews

Top Customer Reviews

By T Anderson VINE VOICE on April 6, 2013
Format: Hardcover
Agile is not easy and implementing Domain-Driven Design (DDD) is not easy. I think my favorite part of the book is that the author realizes that, and also has a realistic perspective on what it takes to successfully use agile processes and DDD.

The book starts out with a really nice overview of DDD. By the time you are done the first chapter you have a pretty good high level picture of what DDD is all about. One topic he really drives home is Ubiquitous Language.

Ubiquitous Language is a shared team language that defines a certain domain. When you are reading about Ubiquitous Language it may seem like something that just happens on its own. It isn't. An explicit domain language should be defined, it should not just be allowed to implicitly come about. This same concept has been around for years in Water Fall, Unified Process, RUP, and other processes. It has always been a very important part of the software development process, so don't discount it.

Chapter 1 also does a great job of providing tips on how to show the business value of using DDD. The author has a clear understanding that without the support of the business you aren't going to get very far with your project, and in order to get them onboard you need to show them what they will gain by supporting DDD.

The remaining chapters dig into the details of DDD. I have listed the chapters below. Their titles are pretty self-explanatory.

Chapter 1. Getting Started with DDD
Chapter 2. Domains, Subdomains, and Bounded Contexts
Chapter 3. Context Maps
Chapter 4. Architecture
Chapter 5. Entities
Chapter 6. Value Objects
Chapter 7. Services
Chapter 8. Domain Events
Chapter 9. Modules
Chapter 10. Aggregates
Chapter 11. Factories
Chapter 12.
Read more ›
4 Comments 24 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Kindle Edition Verified Purchase
I have trouble balancing my appreciation for the conceptual material in this book with my dislike of the presentation and language.

There's enough good material in the book for me to convince myself I needed to plow through it to the end; the writing was such that I had to force myself to do it. I'd really like to read a copy of this that had had the benefit of a good editor. It was verbose, and tended to belabor points that I thought had been pretty clearly conveyed in a few pages, so it took a while to get through it.

It's a fairly thorough overview of the DDD space, and I think it filled in some things I didn't get from Evans earlier book. I do question some of the breezy assertions that it was almost always best to opt for the purety of the model over implementation concerns, particularly around doing implementations on top of RDBMS persistence.

I think it was worth the read, but in comparison to other technical books I've read (and I read a lot of them), it was a lot more work to get through the prose than I think it needed to be.
1 Comment 14 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Hardcover Verified Purchase
DDD is definitely not getting the amount of attention it deserves. If you're new to DDD and thinking of reading a book that will introduce you DDD concepts, this is the right choice. It takes out the best from Evan's classic "Domain Driven Design" and mixes in some modern concepts and advices for pragmatic DDD or overall architecture.

This book explains DDD concepts on well-chosen domain problem - agile and SCRUM. Reader (who is very likely to have at least some experience with SCRUM) is going to feel comfortable with most of the examples that this book provides.

Another huge plus is that author stays pragmatic. Author knows that DDD touches lot of 'theoretical' concepts, so he often mentions real-world situations and advises how to compromise certain situations - how can be DDD fully or not-so-fully utilised within your business. If you're afraid of 'too many abstractions' then don't be - peek into table of contents and you will see that author explains DDD on very real and quite recent technologies/buzzwords like REST, CQCS, Hexagonal Architecture etc. Author also assumes that reader is rather new to the whole DDD thing and patiently explains things you were 'afraid to ask', like "What's the difference between DAO and Repository?", "Is it OK to put fine-grained queries to DAO and return Value Objects?" etc.

On the other hand - what's not so great about this book is its verbosity. I don't mind repeating important concepts (redundancy can be useful as we know it from Head First books for example), but I often felt like reading a novel. If I wanted to read a novel, I would buy a novel. Technical books should be brief and precise.
Read more ›
Comment 10 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Hardcover
After reading Evan's excellent book I was still left searching for additional examples. Vernon's book with its multiple examples really helped drive home concepts of DDD, and bring in new concepts such as Events. I think the thing that I benefited most from was Vernon's examples of Bounded Contexts, something I admittedly skimmed over in Evan's but in hindsight I would now rate as one of the most important concepts for developing models that align with business sector needs. The best development book I have ever bought!
Comment 15 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse

Most Recent Customer Reviews

Set up an Amazon Giveaway

Implementing Domain-Driven Design
Amazon Giveaway allows you to run promotional giveaways in order to create buzz, reward your audience, and attract new followers and customers. Learn more
This item: Implementing Domain-Driven Design