En Diseñ o funcional, el reputado ingeniero de software Robert C. Martin ('Uncle Bob') explica có mo y por qué utilizar la programació n funcional para crear sistemas mejores para clientes reales. Martin compara las estructuras de la programació n convencional orientada a objetos en Java con las que permiten los lenguajes funcionales, identifica los mejores roles para cada una y muestra có mo crear sistemas mejores utilizá ndolos correctamente en cada contexto.
El enfoque de Martin es pragmá tico, con una teorí a mí nima, y se centra en la solució n de problemas 'desde las trincheras'. A travé s de ejemplos accesibles, los desarrolladores profesionales descubrirá n có mo el lenguaje Clojure, rico a nivel semá ntico y fá cil de aprender, puede ayudarles a mejorar la limpieza del có digo, el diseñ o, la disciplina y los resultados. Martin examina los conocidos principios SOLID y los patrones de diseñ o Gang of Four desde una perspectiva funcional, y revela por qué los patrones siguen teniendo un gran valor para los programadores funcionales, y có mo usarlos para conseguir resultados superiores.
* Entienda conceptos bá sicos funcionales: inmutabilidad, datos persistentes, recursividad, iteració n, pereza y programas con estado.
* Contraste los enfoques funcionales y de objetos a travé s de casos prá cticos elaborados con cuidado.
* Explore té cnicas de diseñ o funcional para el flujo de datos.
* Use principios SOLID clá sicos para escribir mejor có digo Clojure.
* Domine enfoques pragmá ticos respecto a las pruebas funcionales, las GUI y la concurrencia.
* Aproveche al má ximo los patrones de diseñ o en entornos funcionales.
* Cree paso a paso una aplicació n de clase empresarial en Clojure.