Domain Modeling Made Functional
Wlaschin, Scott
Used - Soft cover
Condition: Used - As new
Ships from Germany to U.S.A.
Quantity: 1 available
Add to basketCondition: Used - As new
Quantity: 1 available
Add to basketYou 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."About this title" may belong to another edition of this title.
1. Scope
For all orders via our store on the AbeBooks Marketplace, the following terms and conditions apply. Unless otherwise agreed, the inclusion of any terms and conditions of your own used by you is contradicted.
2. contracting party, conclusion of contract, correction options
The purchase contract is concluded with momox SE.
The subject of the contract is the sale of goods.
If an article is posted by us on AbeBooks, the activation of the offer page on AbeBooks is the binding offer to conclu...
Right of withdrawal
You have the right to cancel this contract within fourteen days without giving any reason. The withdrawal period is fourteen days from the day on which you or a third party named by you, who is not the carrier, have taken or has taken possession of the last goods. In order to exercise your right of withdrawal, you must inform momox SE, Schreiberhauer Straße 30, 10317 Berlin, telephone number: 0049 (0) 30/488 288 200, e-mail: service@momox-shop.uk, by means of a clear declaration (e.g. a letter sent by post, fax or e-mail) of your decision to withdraw from this contract. You can use the model withdrawal form for this purpose, but it is not mandatory. In order to comply with the withdrawal period, it is sufficient that you send the notification of the exercise of the right of withdrawal before the expiry of the withdrawal period.
Consequences of the revocation
If you revoke this contract, we shall reimburse you for all payments we have received from you, including delivery costs (with the exception of additional costs resulting from the fact that you have chosen a type of delivery other than the most favorable standard delivery offered by us), without undue delay and no later than within fourteen days from the day on which we received the notification of your revocation of this contract. For this repayment, we will use the same means of payment that you used for the original transaction, unless expressly agreed otherwise with you; in no case will you be charged any fees because of this repayment. We may refuse repayment until we have received the goods back or until you have provided proof that you have returned the goods, whichever is the earlier. You must return the goods immediately and in any case no later than within fourteen days from the day on which you notify us of the revocation of this contract to us or to return the goods:
medimops.de Retoure,
Am alten Flughafen 100,
D-04356 Leipzig
Germany
The deadline is met if you send the goods before the expiry of fourteen days. You shall bear the direct costs of returning the goods. You will only have to pay for any loss in value of the goods if this loss in value is due to handling of the goods that is not necessary for checking the condition, properties and functioning of the goods.
| Order quantity | 60 to 60 business days | 60 to 60 business days |
|---|---|---|
| First item | £ 91.14 | £ 112.84 |
Delivery times are set by sellers and vary by carrier and location. Orders passing through Customs may face delays and buyers are responsible for any associated duties or fees. Sellers may contact you regarding additional charges to cover any increased costs to ship your items.