DEV Community

Cover image for Is Domain-Driven Design relevant?
Alan Barr
Alan Barr

Posted on

Is Domain-Driven Design relevant?

I found a FREE guide on Domain-Driven Design that I found helpful. How is it relevant anymore?

It seems like writing code is less significant than modeling your system.

Have you found value in domain-driven design techniques? Or did you find that modeling is not worth the effort?

What do you think?

Top comments (7)

Collapse
 
canro91 profile image
Cesar Aguirre

Like pretty much every technique, DDD has its use cases: complex business logic. I've seen DDD taken to the extreme and used as a golden hammer, for example I've seen CRUD-like application made extremely complex because someone decided to use DDD

Collapse
 
ibrahimshamma99 profile image
Ibrahim Shamma

The CRUD system, itself does not imply intent, and that's the issue.
What if I want to make a promotion on specific item, in the crud world I update the item price, since everything is aggregated.
But what if I want to update the price for 3 days and then revert back?
As you can see my CRUD makes it complicated

Collapse
 
martinpersson profile image
Martin Persson

I'm reading Domain Modeling Made Functional by Scott Wlaschin and its completely blown my mind. I haven't got the chance to work with it yet tho.

Collapse
 
alanmbarr profile image
Alan Barr

Great reminder! C# has records now! I might need to read it again.

Collapse
 
spo0q profile image
spO0q

I don't think DDD means "overcomplexity." It's pretty much the contrary, as you focus on the business.

I'm definitely not an expert in this area, but I've read stuff, and it seems some DDD patterns allows for simpler implementation.

Collapse
 
sanchitrk profile image
Sanchit Rk • Edited

Absolutely, concepts of DDD does help you to understand the sytems you are building better. I am currently learning DDD and started to share my journey as I am building a SaaS app - you can check out here Building SaaS with DDD & Clean Architecture in Python — Issue 1

You don't have to follow or be a hardcore DDD dev, follow what works best for the system that you are building, there is no perfect architecture.

Collapse
 
ibrahimshamma99 profile image
Ibrahim Shamma

The only issue with DDD is it really hard