Skip to main content
Books, videos, and music - all free from your public library!
LoginSign Up

Footer

Hoopla logo, Go to homepage
  • For Patrons
  • For Libraries (opens in new window)
  • For Vendors (opens in new window)
  • Facebook (opens in new window)
  • X (opens in new window)
  • Instagram (opens in new window)
  • YouTube (opens in new window)
  • TikTok (opens in new window)
  • LinkedIn (opens in new window)

Our Company

  • Our Story
  • Get Hoopla for your Library (opens in new window)
  • Get your content on hoopla (opens in new window)
  • Join our team (opens in new window)
  • Accessibility Statement

Our Content

  • Audiobooks
  • Ebooks
  • Movies
  • Television
  • Comics
  • BingePasses
  • Music
  • The Loop Blog

Help

  • Help Center
  • Submit Feedback
  • Facebook (opens in new window)
  • X (opens in new window)
  • Instagram (opens in new window)
  • YouTube (opens in new window)
  • TikTok (opens in new window)
  • LinkedIn (opens in new window)
  • Download on the App Store (opens in new window)
  • Get it on Google Play (opens in new window)
  • Available at Amazon Appstore (opens in new window)
© 2026 Midwest Tape, LLC. All rights reserved. Privacy Policy | Terms of Use
  • Hoopla logo
  • Browse
  • My Hoopla
  • Log In
  1. Navigate Home
  2. Ebooks
  3. Domain Modeling Made Functional

EBOOK

Domain Modeling Made Functional

Tackle Software Complexity With Domain-driven Design And F#

Scott Wlaschin
(0)
sign up
Pages
312
Year
2018
Language
English
Publisher
The Pragmatic Programmers

About

You want increased IPSer satisfaction, faster development cycles, and less wasted work. Domain-driven design (DDD) combined with functional programming is the innovative combo that will get you there. In this pragmatic, down-to-earth guide, you'll see how applying the core principles of functional programming can result in software designs that model real-world requirements both elegantly and concisely - often more so than an object-oriented approach. Practical examples in the open-source F# functional language, and examples from familiar business domains, show you how to apply these techniques to build software that is business-focused, flexible, and high quality.

Domain-driven design is a well-established approach to designing software that ensures that domain experts and developers work together effectively to create high-quality software. This book is the first to combine DDD with techniques from statically typed functional programming. This book is perfect for newcomers to DDD or functional programming - all the techniques you need will be introduced and explained.

Model a complex domain accurately using the F# type system, creating compilable code that is also readable documentation---ensuring that the code and design never get out of sync. Encode business rules in the design so that you have "compile-time unit tests," and eliminate many potential bugs by making illegal states unrepresentable. Assemble a series of small, testable functions into a complete use case, and compose these individual scenarios into a large-scale design. Discover why the combination of functional programming and DDD leads naturally to service-oriented and hexagonal architectures. Finally, 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.

What You Need:

The code in this book is designed to be run interactively on Windows, Mac and Linux.You will need a recent version of F# (4.0 or greater), and the appropriate .NET runtime for your platform.Full installation instructions for all platforms at fsharp.org.

Related Subjects

  • Computer Architecture
  • Computers
  • Adult Nonfiction
  • Tools
  • Software Development & Engineering
  • Data Modeling & Design
  • Data Science

Artists

Scott WlaschinAuthor