En Diseño funcional, el reputado ingeniero de software Robert C.Martin («Uncle Bob») explica cómo y por qué utilizar la programaciónfuncional para crear sistemas mejores para clientes reales. Martincompara las estructuras de la programación convencional orientada aobjetos en Java con las que permiten los lenguajes funcionales,identifica los mejores roles para cada una y muestra cómo crearsistemas mejores utilizándolos correctamente en cada contexto.Elenfoque 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 ellenguaje Clojure, rico a nivel semántico y fácil de aprender, puedeayudarles a mejorar la limpieza del código, el diseño, la disciplina y los resultados. Martin examina los conocidos principios SOLID y lospatrones de diseño Gang of Four desde una perspectiva funcional, yrevela por qué los patrones siguen teniendo un gran valor para losprogramadores funcionales, y cómo usarlos para conseguir resultadossuperiores.* Entienda conceptos básicos funcionales: inmutab