this post was submitted on 20 Dec 2024
96 points (92.9% liked)

Programming

17680 readers
58 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS
 

DRY = Don't repeat yourself

you are viewing a single comment's thread
view the rest of the comments
[–] hono4kami@piefed.social 6 points 6 days ago (3 children)

IMO, this is where techniques like Domain-Driven Design really shine as they put the business concepts at the forefront of things.

Do you have a resource on where to learn DDD? I feel like I never understood the concept well.

[–] jonc211@programming.dev 5 points 6 days ago (1 children)

As already mentioned, the blue book by Evic Evans is a good reference, but it's a ittle dry. Vaughn Vernon has a book, "Implementing Domain-Driven Design" that is a little easier to get into.

Personally, I found that I only really grokked it when I worked on a project that used event-sourcing a few years back. When you don't have the crutch of just doing CRUD with a relational database, you're forced to think about business workflows - and that's really the key to properly understanding Domain-Driven Design.

[–] vulture_god@lemmy.dbzer0.com 2 points 6 days ago

Yeah for me the understanding really came when working in a federated GraphQL API. Each team had us own little slice of overall object graph, and overlap / duplication / confusing objects across the whole domain were a lot easier to see in that environment.

"Domain Driven Design" by Eric Evans, aka the blue book. It's very dense however and very object oriented, but concepts apply even if you dont work with object oriented languages, you might have to do more footwork to get from a domain model to services that adhere to the model.

"Head first Software Architecture" might be an easier on ramp and touches on simmiliar concepts.

[–] KKriegGG@programming.dev 1 points 6 days ago

If you can work with python cosmic python (http://www.cosmicpython.com/book/preface.html) is a great resource