Notes on Domain Modeling Made Functional

I’ll divide my notes from Domain Modeling Made Functional into four main sections: fundamentals of domain-driven design; functional architectures; domain modeling; and high-level takeaways. I’ll include page numbers where applicable in case you’ve purchased the book and want to use these notes as a reference.

Overall, I greatly enjoyed this book, and I’d likely advocate for using its guidance if I become an architect of an enterprise software project in the future. In practice, I plan to use its guidance on domain modeling quite heavily: I want to understand the domain of freight forwarding (and specifically, warehousing) deeply enough such that I can model the core components effectively in software. In addition, I will continue to look for ways to apply the principles of functional programming (particularly around designing programs as pipleines) despite my usage of object-oriented languages in my day-to-day (Ruby, JavaScript, and Java).

Fundamentals of domain-driven design (DDD)

Functional architecture

Domain modeling

Takeaways