Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F#
Scott Wlaschin
- 出版商: Pragmatic Bookshelf
- 出版日期: 2018-02-10
- 定價: $1,490
- 售價: 9.5 折 $1,416
- 貴賓價: 9.0 折 $1,341
- 語言: 英文
- 頁數: 312
- 裝訂: Paperback
- ISBN: 1680502549
- ISBN-13: 9781680502541
-
相關分類:
Domain-Driven Design、F#
立即出貨 (庫存 < 4)
買這商品的人也買了...
-
$2,420$2,299 -
$1,650$1,568 -
$420$357 -
$1,368The Art of Unit Testing: with examples in C#, 2/e (Paperback)
-
$1,216$1,152 -
$1,750$1,663 -
$796$756 -
$1,330$1,264 -
$380$323 -
$520$468 -
$594$564 -
$1,330$1,264 -
$1,710Dependency Injection: Principles, Practices, Patterns ,2e
-
$1,330$1,264 -
$1,330$1,264 -
$1,980$1,881 -
$1,492Cloud Native Patterns
-
$1,960$1,862 -
$1,155$1,097 -
$1,881$1,782 -
$880$695 -
$1,300$1,235 -
$414$393 -
$480$379 -
$1,600$1,520
相關主題
商品描述
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.