Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

DCI - the architecture from the future

1,021 views

Published on

DCI can be seen as one of the most inspiring software architectures nowadays. Is it of any practical use?

Published in: Technology

DCI - the architecture from the future

  1. 1. DCI - the architecture from the future? Andrzej Krzywda Arkency
  2. 2. Andrzej Krzywda • Ruby • Arkency • async/remote work • DDD, Hexagonal, CQRS/ES, Clean Architecture • used DCI in production 3.years.ago
  3. 3. OOP vs FP
  4. 4. Use cases!
  5. 5. DCI • Data • Context • Interaction
  6. 6. The mental model
  7. 7. objects
  8. 8. function
  9. 9. Focus on runtime interaction
  10. 10. http://www.slideshare.net/cosenzaLab/dci-gizmo
  11. 11. Examples • Gaming platform • Meetup context • Account example
  12. 12. Lessons from production • Fewer objects • More roles • Use-cases == awesome • great for testing (at use-case level) • limitations of Ruby (unable to unextend)
  13. 13. http://fulloo.info
  14. 14. https://www.youtube.com/watch?v=KtHQGs3zFAM Cope vs Uncle Bob on TDD
  15. 15. Marvin is a programming language that was designed with DCI in mind. It builds heavily on C#. The first versions of Marvin can be seen as extensions to C# where versions in the road map will most likely reshape some of the fundamentals to provide even better support for DCI
  16. 16. Code examples
  17. 17. Is it of practical use?
  18. 18. DCI as inspiration
  19. 19. How would it look as DCI?
  20. 20. Thanks!

×