Advanced Functional Programming with Elixir: Model Behavior, Manage Complexity, and Maximize Maintainability
暫譯: 進階函數式程式設計與 Elixir:建模行為、管理複雜性與最大化可維護性
Koski, Joseph, Tulton, Adaobi Obi
- 出版商: Pragmatic Bookshelf
- 出版日期: 2025-12-12
- 售價: $2,260
- 貴賓價: 9.5 折 $2,147
- 語言: 英文
- 頁數: 238
- 裝訂: Quality Paper - also called trade paper
- ISBN: 9798888651797
- ISBN-13: 9798888651797
-
相關分類:
Functional-programming
海外代購書籍(需單獨結帳)
商品描述
Combine advanced functional programming concepts with production-ready Elixir and proven domain-driven design techniques to write cleaner, more thoughtful software. You'll explore foundational ideas like equality, ordering, predicates, monoids, and monads--then go beyond syntax as you develop intuition for composing logic, modeling behavior, and growing systems. With a focus on maintainable, declarative code over theory, you'll gain practical, composable patterns you can apply right away.
Get ready to manage crowds, adjust priorities, and keep everyone safe in FunPark, a place that never sits still. Your job is to model that complexity and build the systems that keep everything running smoothly, even as the business team is still figuring out what they want and the experts keep rewriting the rules.
Using core abstractions--equality, ordering, predicates, monoids, and monads--you'll break problems into small, composable pieces that are both well-behaved and easy to combine. Rather than getting bogged down in theory or formal proofs, you'll dive into real-world Elixir--using protocols, structs, and pattern matching to express shared behavior across your domain. Along the way, you'll build the vocabulary and mental models you need to organize complex logic, supported by a production-ready open-source library you can use, extend, and explore in your own projects.
Whether you're an Elixir developer mastering functional programming or a functional programmer exploring Elixir, you'll discover how to write code that's easier to reason about--and create systems that stay understandable, even as they grow.
What You Need:
To follow along with the examples in this book, you'll need Elixir version > 1.16, access to the interactive shell (iex), and a code editor that supports Elixir syntax--such as Visual Studio Code, Neovim, or any editor you're comfortable with. You won't need Phoenix or any additional setup; the examples are minimal and self-contained, so you to focus on functional concepts without configuration overhead. If you're unsure how to install Elixir, see the official instructions at elixir-lang.org.
商品描述(中文翻譯)
使用先進的函數式程式設計原則、實用的領域驅動設計技術,以及生產就緒的 Elixir 代碼,從簡單、可重用的組件構建可擴展的複雜系統。
結合先進的函數式程式設計概念與生產就緒的 Elixir 及經過驗證的領域驅動設計技術,撰寫更乾淨、更深思熟慮的軟體。您將探索基本概念,如相等性(equality)、排序(ordering)、謂詞(predicates)、單元(monoids)和單子(monads)——然後超越語法,發展組合邏輯、建模行為和擴展系統的直覺。專注於可維護的聲明式代碼而非理論,您將獲得可以立即應用的實用、可組合的模式。
準備好在 FunPark 管理人群、調整優先順序並確保每個人安全,這是一個永不靜止的地方。您的工作是建模這種複雜性,並構建保持一切運行順利的系統,即使商業團隊仍在弄清楚他們想要什麼,而專家們不斷重寫規則。
使用核心抽象概念——相等性、排序、謂詞、單元和單子——您將把問題拆分為小的、可組合的部分,這些部分既表現良好又易於組合。您不會陷入理論或形式證明中,而是深入實際的 Elixir——使用協議(protocols)、結構(structs)和模式匹配(pattern matching)來表達您領域中的共享行為。在此過程中,您將建立組織複雜邏輯所需的詞彙和心智模型,並得到一個生產就緒的開源庫,您可以在自己的專案中使用、擴展和探索。
無論您是精通函數式程式設計的 Elixir 開發者,還是探索 Elixir 的函數式程式設計師,您都將發現如何撰寫更易於推理的代碼——並創建即使在擴展時仍然易於理解的系統。
您需要的條件:
要跟隨本書中的範例,您需要 Elixir 版本 > 1.16,訪問互動式命令行(iex),以及支持 Elixir 語法的代碼編輯器——例如 Visual Studio Code、Neovim 或任何您熟悉的編輯器。您不需要 Phoenix 或任何額外的設置;範例是最小且自包含的,因此您可以專注於函數式概念,而不必擔心配置的負擔。如果您不確定如何安裝 Elixir,請參見官方說明 elixir-lang.org。