Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@renan-taranto
Created December 12, 2017 00:23
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save renan-taranto/c4db2f9411608e9c7c37db6a29d304ee to your computer and use it in GitHub Desktop.
Save renan-taranto/c4db2f9411608e9c7c37db6a29d304ee to your computer and use it in GitHub Desktop.
Articles about hexagonal architecture
  1. Read the slides "Crafting beautiful software". Take notes on terminology, and where these things appear on the blue Hexagon. https://www.slideshare.net/JornOomen/crafting-beautiful-software

  2. Google search topic on the terminologies. (example: php, explain command bus) - Also, do a google image search on terminologies too.

  3. Read about "Hexagonal Architecture - message-oriented software design" from PHPCon Poland 2015 a. https://www.slideshare.net/matthiasnoback/hexagonal-architecture-messageoriented-software-design-phpcon-poland-2015 b. Watch the presentation too which explains each slide in greater detail: https://vimeo.com/153825261

  4. Repeat step #2.

  5. After completing all steps above, look here: a. http://blog.sapiensworks.com/post/2016/08/22/DDD-Cqs-Cqrs (Open links in new tab that appears in article) b. http://blog.sapiensworks.com/post/2016/07/14/DDD-Aggregate-Decoded-1 (Follow the link at the end of the article. There are 3 parts to this)

  6. Repeat step #4.

  7. Read and watch the slide, blog post and video presentation. Blog: http://fideloper.com/hexagonal-architecture Slides: https://speakerdeck.com/fideloper/hexagonal-architecture Video with slides: https://www.youtube.com/watch?v=6SBjKOwVq0o

  8. Different reasons to validate http://danielwhittaker.me/2016/04/20/how-to-validate-commands-in-a-cqrs-application/ http://verraes.net/2015/02/form-command-model-validation/

  9. Code duplication is not the issue http://verraes.net/2014/08/dry-is-about-knowledge/ http://verraes.net/2014/02/buzzword-free-bounded-contexts/

  10. Directory structure? An example, there are many variations of the "Domain, Application, Infrastructure" https://php-and-symfony.matthiasnoback.nl/2017/08/layers-ports-and-adapters-part-3-ports-and-adapters/

Note: CQRS (Command Query Responsibility Segrogation) has nothing to do with Hexagonal Architecture and vice versa. Some people just make use of both.

Read more about CQRS here: http://cqrs.nu/ - http://cqrs.nu/Faq - Google it up, etc.

Pro-tip: Domain model is not the Persistence Model. Say it with me! http://blog.sapiensworks.com/post/2012/04/07/Just-Stop-It!-The-Domain-Model-Is-Not-The-Persistence-Model.aspx

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment