3 ms·
You need to understand the context that birthed DDD. It was a reaction to the model of building business logic into UI event handlers which was pushed hard at t
by radicalbyte 6y ago
You need to understand the context that birthed DDD. It was a reaction to the model of building business logic into UI event handlers which was pushed hard at the time by the Visual Basic (and java equivalent) crowd in businesses.
Originally Fowler documented the domain model in PoEAA, then Evans took the idea and ran with it.
I agree that the book hasn't aged well: like the GoF book it's a slog to read. Evans isn't Fowler.
- huseyinkeles 6y agoWhat is GoF book?
- detaro 6y ago"Design Patterns: Elements of Reusable Object-Oriented Software". also called the Gang-of-Four or GoF book for the four authors.
- huseyinkeles 6y agoThanks!
- dang 6y agoI don't think that history is right. Martin was talking about Eric's work and crediting him long before Eric's book came out. I saw Martin give a talk just before PoEAA came out and he was telling people to wait for Eric's book to get the richest take on domain modeling. DDD was born from Eric's roots in Smalltalk development. When Smalltalk got supplanted by Java there was a strong desire to find ways of building Java systems that could recover at least some of that development style, such as domain modeling, despite the technology being much less flexible. At the time it had sort of the feel of 'preserving what we can of civilization after the apocalypse'. DDD wasn't the only thing that emerged this way, of course. Quite a few Smalltalk programmers became influential programming teachers in the post-Smalltalk world (Fowler, Beck, Cunningham). Eric was probably the latest of these to emerge because he spent years working on that book. (It's been years since I've read it but my impression was always that it was unusually well written. It's true that you have to read it as a book to really get it, which is kind of a lot to ask nowadays.)
- radicalbyte 6y agoMartin's books formalised learnings of others - including those from the Smalltalk community - and PoEAA acts like a good map to the works of information systems. When I say that "Eric took that idea and ran with it", I mean that Eric went into a lot of detail on the Domain Model (and wrote the definitive book on it). Given the way that Fowler (and Thought Works) work I wouldn't be surprised if Eric was one of the main sources. Both books had a great impact on me, and they're both on the reading list I give to developers I'm mentoring. Properly applied DDD is extremely effective, just using Bounded Contexts is extremely valuable (i.e. taking a high level view of your enterprise, putting logical boundaries in place and accepting different abstractions in different contexts).
- dang 6y ago> just using Bounded Contexts is extremely valuable Eric would be happy to hear that. I think he felt that the later chapters of the book, on strategic design, got insufficient attention. Ubiquitous language only applies within a bounded context!