Название: Functional Design: Principles, Patterns, and Practices (Final) Автор: Robert C. Martin Издательство: Addison-Wesley Professional/Pearson Education Год: 2024 Страниц: 376 Язык: английский Формат: pdf (true), epub (true) Размер: 34.6 MB, 35.5 MB
A Practical Guide to Better, Cleaner Code with Functional Programming.
In Functional Design, renowned software engineer Robert C. Martin ("Uncle Bob") explains how and why to use functional programming to build better systems for real customers. Martin compares conventional object-oriented coding structures in Java to those enabled by functional languages, identifies the best roles for each, and shows how to build better systems by judiciously using them in context.
Martin's approach is pragmatic, minimizing theory in favor of "in the-trenches" problem-solving. Through accessible examples, working developers will discover how the easy-to-learn, semantically rich Clojure language can help them improve code cleanliness, design, discipline, and outcomes. Martin examines well-known SOLID principles and Gang of Four Design Patterns from a functional perspective, revealing why patterns remain extremely valuable to functional programmers, and how to use them to achieve superior results.
This is a book for programmers in the trenches who want to learn how to use functional programming languages to get real things done. As such, I will not spend any appreciable time on the more theoretical aspects of functional programming such as Monads, Monoids, Functors, Categories, and so on. Not that these ideas aren’t valid, valuable, or relevant; rather, they do not often impact the day-to-day world of the programmer. This is because they have already been “baked into the cake” of the common languages, libraries, and frameworks. If you are interested in functional theory, I recommend the writings of Mark Seemann.
This book is about how—and why—to use functional programming in our day-to-day effort to build real systems for real customers. In the pages that follow, we will be comparing and contrasting the coding structures that are common in object-oriented languages like Java to those that are common in functional languages like Clojure. I have chosen these two languages in particular because Java is very widely known and used, and Clojure is extraordinarily simple to learn.
Understand functional basics: immutability, persistent data, recursion, iteration, laziness, and statefulness Contrast functional and object approaches through expertly crafted case studies Explore functional design techniques for data flow Use classic SOLID principles to write better Clojure code Master pragmatic approaches to functional testing, GUIs, and concurrency Make the most of design patterns in functional environments Walk through building an enterprise-class Clojure application
"Functional Design exudes 'classic-on-arrival'. Bob pulls back the curtain to reveal how functional programming elements make software design simple yet pragmatic. He does so without alienating experienced object-oriented programmers coming from languages like C#, C++, or Java." --Janet A. Carr, Independent Clojure Consultant
Скачать Functional Design: Principles, Patterns, and Practices (Final)
Внимание
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.