Functional and Reactive Domain Modeling
- 5h 28m
- Debasish Ghosh
- Manning Publications
- 2017
Summary
Functional and Reactive Domain Modeling teaches you how to think of the domain model in terms of pure functions and how to compose them to build larger abstractions.
About the Technology
Traditional distributed applications won't cut it in the reactive world of microservices, fast data, and sensor networks. To capture their dynamic relationships and dependencies, these systems require a different approach to domain modeling. A domain model composed of pure functions is a more natural way of representing a process in a reactive system, and it maps directly onto technologies and patterns like Akka, CQRS, and event sourcing.
About the Book
Functional and Reactive Domain Modeling teaches you consistent, repeatable techniques for building domain models in reactive systems. This book reviews the relevant concepts of FP and reactive architectures and then methodically introduces this new approach to domain modeling. As you read, you'll learn where and how to apply it, even if your systems aren't purely reactive or functional. An expert blend of theory and practice, this book presents strong examples you'll return to again and again as you apply these principles to your own projects.
What's Inside
- Real-world libraries and frameworks
- Establish meaningful reliability guarantees
- Isolate domain logic from side effects
- Introduction to reactive design patterns
About the Reader
Readers should be comfortable with functional programming and traditional domain modeling. Examples use the Scala language.
About the Author
Software architect Debasish Ghosh was an early adopter of reactive design using Scala and Akka. He's the author of DSLs in Action, published by Manning in 2010.
In this Book
-
Foreword
-
About This Book
-
Functional Domain Modeling—An Introduction
-
Scala for Functional Domain Models
-
Designing Functional Domain Models
-
Functional Patterns for Domain Models
-
Modularization of Domain Models
-
Being Reactive
-
Modeling with Reactive Streams
-
Reactive Persistence and Event Sourcing
-
Testing Your Domain Model
-
Summary—Core Thoughts and Principles