Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Domain Driven Design efforts in dynamic languages? [closed]

Are you aware of any DDD efforts in a dynamic language ?

Practical resources on DDD tend to decrease quite dramatically when straying from enterprise-oriented solutions (a google search exluding C#, .NET, ASP and Java yields 10 times less results), but i couldn't actually find a single example of a DDD implementation in a dynamic language...

like image 698
julien Avatar asked Nov 17 '09 12:11

julien


People also ask

Is Domain-Driven Design still relevant?

Domain Driven Design (DDD) has recently gained additional popularity, as evidenced by new books, conference talks, and even complete conferences dedicated to it), and lots of trainings – including some by our very own colleagues here at INNOQ.

What is meant by Domain-Driven Design?

Domain-driven design (DDD) is a software development philosophy centered around the domain, or sphere of knowledge, of those that use it. The approach enables the development of software that is focused on the complex requirements of those that need it and doesn't waste effort on anything unneeded.

What problem does Domain-Driven Design Solve?

The domain-driven approach is here to solve the complexity of software development. On the other hand, you can use emergent design when the challenge is simple. However, when your application is complex, the complexity will only grow, and so will your problems. Domain-driven design bases on the business domain.

Which approach we can use for Domain-Driven Design?

Domain-Driven Design is a concept introduced by a programmer Eric Evans in 2004 in his book Domain-Driven Design: Tackling Complexity in Heart of Software. It is an approach for architecting software design by looking at software in top-down approach.


Video Answer


2 Answers

Recently I tried to collect all known sources related to DDD in dynamic languages. I was end up with this guthub repo.

For reference here some code examples:

1) Ruby DDD Sample App

2) DDD in Django example

3) Kanban board in Python with DDD approach

like image 98
valignatev Avatar answered Oct 21 '22 18:10

valignatev


No, I'm not, but the principles remain the same so there shouldn't be any reasons why it wouldn't work out just as well, especially if the dynamic language in question has a good OO support (e.g. Ruby).

Even better perhaps, since your domain model could more easily make use of e.g. traits/mixins, and concepts from DCI, etc. if there's a fit.

like image 37
Martin R-L Avatar answered Oct 21 '22 20:10

Martin R-L