Descripción:
Un enfoque funcional fomenta la reutilización del código, simplifica en gran medida las pruebas y los resultados en un código que es conciso y fácil de entender. Este curso demostrará cómo PHP también se puede utilizar como un lenguaje funcional, lo que le permite aprender sobre diversas técnicas de función para escribir código fácil de leer y legible. Después de una breve introducción a la programación funcional, nos adentraremos en ejemplos de código para que pueda aprovechar al máximo lo que acaba de aprender. Vamos a ir más allá con las mónadas, la memorización y las pruebas basadas en propiedades.
Objetivo:
En el Curso de Programación Funcional con PHP Aprenderá cómo hacer uso de la modularidad de funciones al escribir código PHP funcional. A través de los consejos y las mejores prácticas de este libro, podrá hacer más con menos código y reducir los errores en sus aplicaciones. No solo podrá aumentar su rendimiento, sino que también descubrirá cómo eliminar problemas comunes de bucle. Al final del libro, conocerá una amplia variedad de técnicas nuevas que puede usar en cualquier código base nuevo o heredado.
Temario:
PParte 1: FUNCIONES COMO CIUDADANOS DE PRIMERA CLASE EN PHP
Antes de comenzar | Funciones y métodos | PHP 7 consejos tipo escalar | Funciones anónimas | Cierres | Usar objetos como funciones | La clase de cierre | Funciones de orden superior | ¿Qué es un invocable?
Parte 2: FUNCIONES PURAS, TRANSPARENCIA REFERENCIAL E INMUTABILIDAD
Dos juegos de entrada y salida | Funciones puras | Inmutabilidad | Transparencia referencial | PHP en todo eso?
Parte 3: BASE FUNCIONAL EN PHP
Consejo general | La función de mapa | La función de filtro | La función de plegar o reducir | Convolución o zip | Recursion | Excepciones | Alternativas a excepciones | La opción / Quizás y Cualquiera de los tipos | Bibliotecas
Parte 4: FUNCIONES COMPUESTAS
Funciones de composición | Aplicación parcial | Currying | ¡El orden de los parámetros importa mucho! | Usar composición para resolver problemas reales
Parte 5: FUNCOS, APLICACIONES Y MONEDAS
Functors | Functors Aplicativos | Monoids | Mónadas | Otras lecturas
Parte 6: MÓNADS DE LA VIDA REAL
Métodos de ayuda monádica | Tal vez y cualquiera de las mónadas | Lista de mónadas | Escritor mónada | Mónada de lector | Mónada del estado | IO mónada
Parte 7: TÉCNICAS Y TEMAS FUNCIONALES
Tipo de sistemas | Estilo sin puntos | Usando const para funciones | Recursion, desbordamientos de pila y trampolines | Coincidencia de patrones | Clases de tipos | Estructuras algebraicas y teoría de categorías | Transformadores de mónada | Lentes
Parte 8: PRUEBAS
Probando vocabulario | Probando funciones puras | Acelerando con la paralelización | Pruebas basadas en propiedades
Parte 9: EFICIENCIA DE RENDIMIENTO
Impacto en el rendimiento | Memoization | Paralelización del cálculo
Parte 10: PHP FRAMEWORKS Y FP
Symfony | Laravel | Drupal | WordPress
Parte 11: DISEÑO DE UNA APLICACIÓN FUNCIONAL
Arquitectura de una aplicación puramente funcional | De la Animación Reactiva Funcional a la Programación Reactiva Funcional | ReactiveX primer | RxPHP
Parte 12: ¿QUÉ ESTAMOS HABLANDO ACERCA DE CUANDO HABLAMOS SOBRE LA PROGRAMACIÓN FUNCIONAL
¿De qué se trata la programación funcional? | ¿Por qué la programación funcional es el futuro del desarrollo de software? | Una historia rápida del mundo funcional | Jerga funcional