$1,188Core Java, Volume II--Advanced Features, 9/e (Paperback)
$855PHP Arrays: Single, Multi-dimensional, Associative and Object Arrays in PHP 7
- Greatly improve your code quality, testability, and readability using modern functional programming techniques
- Get a solid foundation in functional programming techniques and methodologies
- Step-by-step learn the concepts to architect more robust code
A functional approach encourages code reuse, greatly simplifies testing, and results in code that is concise and easy to understand. This book will demonstrate how PHP can also be used as a functional language, letting you learn about various function techniques to write maintainable and readable code.
After a quick introduction to functional programming, we will dive right in with code examples so you can get the most of what you ve just learned. We will go further with monads, memoization, and property-based testing. You will learn how to make use of modularity of function while writing functional PHP code.
Through the tips and best practices in this book, you ll be able to do more with less code and reduce bugs in your applications. Not only will you be able to boost your performance, but you will also find out how to eliminate common loop problems. By the end of the book, you will know a wide variety of new techniques that you can use on any new or legacy codebase.
What you will learn
- Declare functions/callables and find out how to manipulate and call them
- Write pure functions to get more robust code that can be easily tested
- Learn to compose function using various techniques
- Use a functional approach to find readable solutions to common issues
- Utilize performance optimization techniques such as laziness, memorization, and parallelization
- Build the business logic of applications with the functional paradigm
- Test functional code and know how to speed up test runs using parallel testing
- Understand the impact and limitation of functional programming in PHP
About the Author
Gilles Crettenand is a passionate and enthusiastic software developer. He thrives when solving challenges and is always on the lookout for a better way to implement his solutions. He has a bachelor's degree in computer science from the School of Engineering and Management Vaud in Switzerland and has more than 6 years of experience as a web developer.
Most of his professional career has been spent using PHP, developing a variety of applications ranging from accountability software to e-commerce solutions and CMS. At nights, however, he likes to try other languages, dabbling with Haskell, Scala, and more recently, PureScript, Elm, and Clojure.
Being a certified scrum master, he understands the need to use the right tool for the job and maintaining a readable and maintainable codebase using the best techniques and practices available.
Table of Contents
- Functions as First Class Citizens in PHP
- Pure Functions, Referential Transparency, and Immutability
- Functional Basis in PHP
- Composing Functions
- Functors, Applicatives, and Monads
- Real-Life Monads
- Functional Techniques and Topics
- Performance Efficiency
- PHP Frameworks and FP
- Designing a Functional Application
- What Are We Talking about When We Talk about Functional Programming