joebew42 / study-path

An organized learning path on Clean Code, Test-Driven Development, Legacy Code, Refactoring, Domain-Driven Design and Microservice Architecture
2.86k stars 342 forks source link

Session 9 about DDD and Microservices #5

Closed joebew42 closed 7 years ago

joebew42 commented 8 years ago

I would like to create a the 9th session that will cover the part about Domain-Driven Design and Microservices.

I think I'll go to use these references for the main theory section:

Then, I would like to add some videos, also, in order to give a more comprehensive description and explanation of the theory.

I want to keep focus about the practice, too. So, I'm going to think about some exercises to suggest during the study.

I am a bit confused and right now I have no idea if topics regarding DDD (domain driven design) can be added in this session. Microservices inherits concepts from DDD, like Bounded Context and others. What do you think? Can we use the session about Microservices to give some insights on DDD also?

Any ideas about the organization of this week are welcome! Thank you all :smile:

svlada commented 8 years ago

DDD would deserve decent amount of time to grasp certainly not a single week.

Also, I may want to change verbiage from "Week" to "Month" because there it's impossible for somebody to really learn/read all of these materials in a week.

Nilmanduil commented 8 years ago

I think the best word is "session", because time needed for each part may vary and depend on people who follow the study path. Some may need only one week for a part, while others may need 2 weeks or a month as you say, svlada.

joebew42 commented 8 years ago

Thanks to all for the observations, I agree with you all about the "wrong" term: week. Maybe the term "session" makes better the idea (I've created a separate issue to keep track of it).

@svlada The idea is to extract the main concepts behind each topics (e.g. DDD or Microservices) and then let the person decide if or not to go in depth with. The good part here is that he or she can easily access to the references: books, blog posts, articles or videos, etc.

pdincau commented 8 years ago

@joebew42 what about this video? I think it could work as a light introduction to the topic. InfoQ link here. There are also a couple of good videos by Sam Newman on vimeo.

joebew42 commented 8 years ago

@pdincau Absolutely! If you have more videos about the topic, please post them here :+1:

joebew42 commented 8 years ago

In the meanwhile I found and started to read this book: Domain-Driven Design Quickly. I think it can be used as introduction material for Domain-Driven Design topics, just to give the person who follows the study path a well and organized overview about domain-driven design. In this book there also a lot of references for the main two books:

There are a lot of topics in DDD which are needed to better understand Microservices, so I think that the session could be renamed in "Domain-Driven Design and Microservices"

joebew42 commented 8 years ago

New interesting material about Microservices Architecture:

pdincau commented 8 years ago

@joebew42 this is a good resource on the topic: http://martinfowler.com/articles/microservice-trade-offs.html

waterlink commented 8 years ago

There are a bunch of videos available on youtube with Fred George on (mostly) asynchronous microservices: https://www.youtube.com/results?search_query=fred+george+micro+services

This one in particular I have watched and can recommend: https://www.youtube.com/watch?v=yPf5MfOZPY0

Currently watching this one: https://www.youtube.com/watch?v=YRyXyn-DVjU (haven't done that yet) and will give a feedback on it later, so far looks very promising.

waterlink commented 8 years ago

Currently watching this one: https://www.youtube.com/watch?v=YRyXyn-DVjU (haven't done that yet) and will give a feedback on it later, so far looks very promising.

This is really really good. Not necessary for this session though, since it talks about higher-level topics on the bridge between development and business.

pdincau commented 8 years ago

@joebew42 also this one is good!

pdincau commented 8 years ago

@joebew42 maybe also this one about BFF is a good resource.

joebew42 commented 7 years ago

At the end, guys, I've decided to put a new session (the session 8) about Domain-Driven Design, without considering the world of microservices* at the moment. The current session 8 will be renamend in session 9. I think in the next hours I'll make public the new session.

pdincau commented 7 years ago

@joebew42 seems reasonable! 👍