Domain Modeling Made Functional : Pragmatic Programmers Paperback / softback
by Scott Wlaschin
Paperback / softback
- Information
Description
You want increased customer 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.
Information
-
In Stock - Less than 10 copies availableFree UK DeliveryEstimated delivery 2-3 working days
- Format:Paperback / softback
- Pages:312 pages
- Publisher:Pragmatic Bookshelf
- Publication Date:06/03/2018
- Category:
- ISBN:9781680502541
Information
-
In Stock - Less than 10 copies availableFree UK DeliveryEstimated delivery 2-3 working days
- Format:Paperback / softback
- Pages:312 pages
- Publisher:Pragmatic Bookshelf
- Publication Date:06/03/2018
- Category:
- ISBN:9781680502541