Domain Modeling Made Functional
summary
Shows concrete rewrites of a messy contact model into F# types that enforce rules at compile time: uses Option<T> instead of null, wraps strings as single-case unions (EmailAddress, String50) to embed validation, and replaces a boolean email flag with an Email | VerifiedEmail choice so only a verification service can create verified values. Demonstrates pattern matching, algebraic (sum/product) types, and how making illegal states unrepresentable removes many runtime checks and unit tests.
AI-written summary · about
chapters (4)
related talks
51mDomain Modeling Made Functional
49mDomain Modeling Made Functional
46mDomain modelling made simple: Functions and Values
46mDesign for errors - An introduction to Domain Modeling with a bit of Arrow
43mIs Maybe an Option (for modelling your domain)?
43mWrite your own domain specific language with F#
53mIntroduction to T(ype)DD with F# and Reactive Web Apps with Fable.io
01h 03mFunctional Programming with C#
