Domain-driven design (DDD) is an approach to software development for complex needs by connecting the implementation to an evolving model. The premise of domain-driven design is the following
- placing the project's primary focus on the core domain and domain logic;
- basing complex designs on a model of the domain;
- initiating a creative collaboration between technical and domain experts to iteratively refine a conceptual model that addresses particular domain problems.
https://en.wikipedia.org/wiki/Domain-driven_design
books:
- http://dddcommunity.org/books/
- https://domainlanguage.com/ddd/
- https://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215
- https://www.amazon.com/Implementing-Domain-Driven-Design-Vaughn-Vernon/dp/0321834577
- https://www.amazon.com/Clean-Architecture-Craftsmans-Software-Structure/dp/0134494164
- http://carfield.com.hk/document/software%2Bdesign/dddquickly.pdf
- http://eventstorming.com/
https://github.com/ddd-by-examples/factory The missing, complete example of Domain-Driven Design enterprise application backed by Spring stack
links:
- https://github.com/heynickc/awesome-ddd
- https://bottega.com.pl/materialy.xhtm?cat=DDD (polish)
- https://bottega.com.pl/pdf/materialy/sdj-ddd.pdf (polish)
- https://bottega.com.pl/pdf/materialy/ddd/ddd1.pdf (polish)
- https://bottega.com.pl/pdf/materialy/ddd/ddd2.pdf (polish)
- https://jakubn.gitlab.io/keepitclean/
- http://tswiackiewicz.github.io/inside-the-source-code/architecture/ddd-layered-architecture/ (polish)
- https://devstyle.pl/2016/11/23/esencja-cqrs-to-bardzo-proste/ (polish)
- http://piotrgankiewicz.com/2016/08/01/handling-domain-events/
- http://tidyjava.com/hexagonal-architecture-powerful/
- http://alistair.cockburn.us/Hexagonal+architecture/v/slim
- http://dddweekly.com/
- https://threedots.tech/post/microservices-or-monolith-its-detail/
presentations:
- Greg Young — A Decade of DDD, CQRS, Event Sourcing https://www.youtube.com/watch?v=LDW0QWie21s
- Eric Evans — Tackling Complexity in the Heart of Software https://www.youtube.com/watch?v=dnUFEg68ESM
- GOTO 2014 • Event Sourcing • Greg Young https://www.youtube.com/watch?v=8JKjvY4etTY
- Mariusz Gil: Discovering unknown with Event Storming https://www.youtube.com/watch?v=Pl5HD8Ae3PU
- Boiling Frogs 2018 - Mariusz Gil - Discovering unknown domain with Event Storming https://youtu.be/dhoXYRqghws?t=15s (polish)
- WJUG #204 - Marcin Haręza: Event Sourcing - co to, po co to, jak to? https://www.youtube.com/watch?v=dEA6uv0FPpE (polish)
- Domain Driven Design - A place for everything and everything in its place https://www.youtube.com/watch?v=jraV7xSTYVs (polish)
- Boiling Frogs 2018 - Jarosław Pałka - Sagi, strumienie, reaktywność i inne buzzwordy https://youtu.be/27S0G9bE3Bg?t=0s (polish)
- https://devstyle.pl/2014/12/01/devtalk04-o-domain-driven-design-ze-slawomirem-sobotka/ (polish)
glossary:
- http://uniknow.github.io/AgileDev/site/0.1.8-SNAPSHOT/parent/ddd/core/glossary.html
- https://gist.github.com/bobthemighty/b241a4fccadbd7591024
- http://dddcommunity.org/resources/ddd_terms/
frameworks:
- https://github.com/RBMHTechnology/eventuate
- https://github.com/eventuate-local/eventuate-local
- https://github.com/RBMHTechnology/eventuate/wiki/Thoughts-on-Eventuate%E2%80%99s-future
- https://github.com/AxonFramework
- https://blog.eventuate.io/2016/04/05/the-eventuate-todo-list-application-microservices-springboot-eventsourcing-cqrs/
- https://github.com/AxonFramework/AxonFramework
- https://github.com/binkley/axon-spring-boot-starter
samples:
- https://github.com/ddd-by-examples/factory
- https://github.com/BottegaIT/ddd-leaven-v2
- https://github.com/eventuate-examples/eventuate-examples-java-spring-todo-list
- https://github.com/avthart/spring-boot-axon-sample
- https://github.com/jakubnabrdalik/hentai-cloudy-rental
- https://github.com/jakubnabrdalik/hentai
- https://ordina-jworks.github.io/conference/2016/07/10/SpringIO16-DDD-Rest.html
- https://github.com/olivergierke/spring-restbucks
ruby / rails related
- https://blog.arkency.com/domain-driven-rails/
- https://ddd-ruby.github.io/
- https://www.developer.com/open/domain-driven-design-aggregates-with-ruby.html
- https://mensfeld.pl/2017/08/domain-driven-rails-mediocrity-driven-book/
- https://medium.com/@poilon/domain-driven-design-with-graphql-on-ruby-on-rails-api-3f0f2a090b4f
- https://github.com/envato/event_sourcery
- https://theplainprogrammer.com/applying-clean-architecture-to-ruby-on-rails-first-impressions-3746ed0c9668
- https://www.youtube.com/watch?v=C3P3yGQyDQ4