Talk discusses how to apply certain basic functional programming techniques on domain model. I showed on example how to convert a typical javaesque code to immutable one with function compostion of invariants. In the end of the talk I sketched suitable architecture combining CQRS, Event Sourcing and Actors. Example is written in Scala.
How to use the example
Example was written for presentation purposes and each step in domain model evolution has its own tag.
Just checkout an appropriate tag using
git checkout [tag-name] to see the appropriate step.
See the list of tags in this repository and start from tag with name
The talk was inspired from following sources:
All of them contains complete running examples of above mentioned concepts and sketched architecture. I inculded only references related to code examples, all other references can be found at the end of the talk slides.