In this SkillsCast Roman Sachse shares a functional approach to DDD that allows you to actually reuse your carefully crafted domain types and behaviour with ease by leveraging F# and the SAFE-Stack to combine CQRS/Event-Sourcing on the backend and the Elm architecture on the frontend.
Domain Driven Design is a way of thinking about the needs of the customers first and putting an emphasis on their language, understandings and human interactions. The outcome of this approach is mostly applied to the backend of applications because this is where most of the business logic resides, but a semantic domain model also benefits the UI design. Unfortunately these semantics are often lost in translation when transferred to the frontend because the impedance mismatch is too high. Therefore the users that are actually using the system will not profit as much as they could from your design. I will show you a functional approach that allows you to actually reuse your carefully crafted domain types and behaviour with ease by leveraging F# and the SAFE-Stack to combine CQRS/Event-Sourcing on the backend and the Elm architecture on the frontend with an overall messaging architecture.
YOU MAY ALSO LIKE:
- Do-It-Yourself: Event-Sourcing (SkillsCast recorded in April 2019)
- Domain Models in Practice: DDD, CQRS & Event Sourcing with Marco Heimeshoff (Online Course on 30th November - 4th December 2020)
- Functional Concurrency in .NET with C# and F# with Riccardo Terrell (Online Course on 1st - 4th December 2020)
- F# eXchange 2020 (Online Conference on 21st October 2020)
- Strategic Domain-Driven Design Tools For Non‑DDD People (Online Meetup on 29th October 2020)
- Implementing Microservices: Nobody Told Me About That (SkillsCast recorded in October 2020)
- Debugging Containers on Kubernetes with "kubectl debug" (SkillsCast recorded in July 2020)
Applied Domain-Driven Design — Full-Stack Event Sourcing
Learner <> Father <> Teacher. Roman Sachse started programming 19 years ago rather by accident shortly after founding his first company when he realized how much fun it was building the stuff he was working on by himself. This set him out on a lifelong journey of learning everything about software development and computer science and he was particularly surprised to realize that this branch of science strongly depends on two fields he was always interested in: people and communication. Roman is a proud father of three year old twin girls, holds a bachelors degree in Cognitive Science and a Masters degree in Computer Science and is currently mainly interested in Domain Driven Design, Functional Programming and the inner workings of software development teams.