{"product_id":"functional-design-and-architecture-examples-in-haskell-9781617299612","title":"Functional Design and Architecture: Examples in Haskell","description":"\u003cb\u003eDesign patterns and architectures for building production quality applications using functional programming.\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e\u003ci\u003eFunctional Design and Architecture\u003c\/i\u003e is a pioneering guide to software engineering using Haskell and other functional languages. In it, you'll discover Functional Declarative Design and other design principles perfect for working in Haskell, PureScript, F#, and Scala. \u003cp\u003e\u003c\/p\u003eIn \u003ci\u003eFunctional Design and Architecture\u003c\/i\u003e you will learn: \u003cp\u003e\u003c\/p\u003e- Designing production applications in statically typed functional languages such as Haskell\u003cbr\u003e - Controlling code complexity with functional interfaces\u003cbr\u003e - Architectures, subsystems, and services for functional languages\u003cbr\u003e - Developing concurrent frameworks and multithreaded applications\u003cbr\u003e - Domain-driven design using free monads and other functional tools\u003cbr\u003e - Property-based, integrational, functional, unit, and automatic whitebox testing \u003cp\u003e\u003c\/p\u003e\u003ci\u003eFunctional Design and Architecture\u003c\/i\u003e lays out a comprehensive and complete approach to software design that utilizes the powerful and fascinating ideas of functional programming. Its examples are in Haskell, but its universal principles can be put into practice with any functional programming language. Inside, you'll find cutting-edge functional design principles and practices for every stage of application development, from architecting your application through to running simple and maintainable tests. \u003cp\u003e\u003c\/p\u003ePurchase of the print book includes a free eBook in PDF and ePub formats from Manning Publications. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eAbout the technology\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003eFunctional programming affects every aspect of software development, from how you write individual lines of code to the way you organize your applications and data. In fact, many standard OO patterns are unsuitable or unnecessary for FP applications. This book will reorient your thinking to align software design with a functional programming style. The examples are in Haskell, but the ideas are universal. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eAbout the book\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e\u003ci\u003eFunctional Design and Architecture\u003c\/i\u003e teaches you how to design software following the unique principles of functional programming. You'll explore FP-first paradigms like Functional Declarative Design by building interesting applications, including a fun spaceship control simulator and a full-fledged backend framework. This is an opinionated book and you may disagree on some points. But we guarantee it will make you think in a fresh way about how you design software. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eWhat's inside\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e- Control code complexity with functional interfaces\u003cbr\u003e - Architectures, subsystems, and services for functional languages\u003cbr\u003e - Domain-driven design using free monads\u003cbr\u003e - Property-based and automatic whitebox testing\u003cbr\u003e - Recalibrate OO designs for functional environments \u003cp\u003e\u003c\/p\u003e\u003cb\u003eAbout the reader\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003eFor experienced developers who know a functional language. \u003cp\u003e\u003c\/p\u003e \u003cb\u003eAbout the author\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e\u003cb\u003eAlexander Granin\u003c\/b\u003e is a senior software engineer and architect with more than 15 years of experience. He is an international speaker, researcher, and book author. \u003cp\u003e\u003c\/p\u003eThe technical editor on this book was \u003cb\u003eArnaud Bailly\u003c\/b\u003e. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003ePart 1\u003cbr\u003e 1 What is software design?\u003cbr\u003e 2 The basics of functional declarative design\u003cbr\u003e Part 2\u003cbr\u003e 3 Drafting the MVP application\u003cbr\u003e 4 End-to-end design\u003cbr\u003e Part 3\u003cbr\u003e 5 Embedded domain-specific languages\u003cbr\u003e 6 Domain modeling with free monads\u003cbr\u003e Part 4\u003cbr\u003e 7 Stateful applications\u003cbr\u003e 8 Reactive applications\u003cbr\u003e Part 5\u003cbr\u003e 9 Concurrent application framework\u003cbr\u003e 10 Foundational subsystems\u003cbr\u003e 11 Persistence: Key-value databases\u003cbr\u003e 12 Persistence: Relational databases\u003cbr\u003e 13 Error handling and dependency inversion\u003cbr\u003e 14 Business logic design\u003cbr\u003e 15 Testing\u003cbr\u003e A Plenty of monads\u003cbr\u003e B Stacking monads with monad transformers\u003cbr\u003e C Word statistics example with monad transformers\u003cbr\u003e D Automatic white-box testing\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eAbout the Author\u003c\/b\u003e\u003cbr\u003eAlexander Granin is a software architect, international speaker, author, and researcher. He is a known authority in the C++ and Haskell communities.\u003cbr\u003e","brand":"Manning Publications","offers":[{"title":"Default Title","offer_id":50900932362514,"sku":"9781617299612","price":55.99,"currency_code":"USD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0831\/4771\/8930\/files\/img_4717eb44-3cd8-421d-9346-dc49c00cf1e7.jpg?v=1738405918","url":"https:\/\/surprise-castle.myshopify.com\/products\/functional-design-and-architecture-examples-in-haskell-9781617299612","provider":"Surprise Castle","version":"1.0","type":"link"}