Domain Modeling Made Functional (Pragmatic Bookshelf)

PragmaticBookshelf
You want increased customer satisfaction, faster development cycles, and less wasted work. Domain-driven design (DDD) and functional programming is the innovative combo that will get you there. Applying the core principles of functional programming results in software designs that model real-world requirements elegantly and concisely. Examples from business domains, with code in F#, show you how to build software that is business-focused, flexible, and high quality.

Scott Wlaschin @swlaschin

Edited by Brian MacDonald @bmacdonald

You want increased customer satisfaction, faster development cycles, and less wasted work. Domain-driven design (DDD) and functional programming is the innovative combo that will get you there. Applying the core principles of functional programming results in software designs that model real-world requirements elegantly and concisely. Examples from business domains, with code in F#, show you how to build software that is business-focused, flexible, and high quality.

Model a complex domain using the F# type system, creating code that is also readable documentation. Encode business rules to create “compile-time unit tests,” and eliminate potential bugs by making illegal states unrepresentable. Discover why functional programming and DDD lead naturally to service-oriented architectures. Create a functional domain model that works with traditional databases, NoSQL, and event stores, and safely expose your domain via a website or API.

Solve real problems by focusing on real-world requirements for your software.


“Scott Wlaschin is one of the most important communicators in practical, applied programming today. In this book, he brings clarity and simplicity to the process of bridging the gap between requirements, customers, and concrete designs and code. Enjoy!”

–Don Syme, Researcher, Microsoft U.K.


  • Full details: Search
  • View this book’s portal and details on how to post errata and suggestions here.

Don’t forget you can get 35% off with your Devtalk discount! Just use the coupon code “devtalk.com" at checkout :+1:

Latest Threads About This Book Top

markhildreth
@swlaschin Written in the persistence chapter under the section “Writing to a relational database”, that “we convert our domain object t...
New
mafinar
TL;DR I am reading “Domain Modeling Made Functional” and discussing and keeping a journal of what I learned from it, any co-readers welco...
New
SJGowen
The diagram on the top of page 18 is the same diagram as on the top of page 17. Please could I see the real diagram for page 18!
New
swlaschin
The book has the same “Problem space/Solution space” diagram on page 18 as is on page 17. The correct Problem/Solution space diagrams ar...
New
PragmaticBookshelf
You want increased customer satisfaction, faster development cycles, and less wasted work. Domain-driven design (DDD) and functional prog...
New

Most Active This Week Top

Most Active This Month Top

Most Active This Year Top

Most Active Last Three Years Top

PragmaticBookshelf
You want increased customer satisfaction, faster development cycles, and less wasted work. Domain-driven design (DDD) and functional prog...
New
mafinar
TL;DR I am reading “Domain Modeling Made Functional” and discussing and keeping a journal of what I learned from it, any co-readers welco...
New
markhildreth
@swlaschin Written in the persistence chapter under the section “Writing to a relational database”, that “we convert our domain object t...
New

Most Active Over Three Years Top

swlaschin
The book has the same “Problem space/Solution space” diagram on page 18 as is on page 17. The correct Problem/Solution space diagrams ar...
New
SJGowen
The diagram on the top of page 18 is the same diagram as on the top of page 17. Please could I see the real diagram for page 18!
New

Get money off!

The Pragmatic Bookshelf

35% off any eBook

Simply use coupon code "devtalk.com" at checkout. See full details here.