Programación funcional en Go (Golang)
300 páginas
Spanish
PDF
4.5

Programación funcional en Go (Golang)

Programación funcional en Go (Golang)

Autor:

Año:

Resumen:

Este libro es una guía práctica para implementar el paradigma de la programación funcional (PF) en el ecosistema de Go. A diferencia de Haskell o Scala, Go no es un lenguaje puramente funcional, pero sus potentes capacidades (cierres, funciones de primera clase, interfaces) permiten aplicar con éxito los principios clave de la PF para crear código más predecible, testeable y seguro para la concurrencia.



De qué trata el libro

El libro introduce progresivamente al lector en los conceptos fundamentales de la PF y muestra cómo implementarlos en Go:

  • Funciones puras e inmutabilidad: cómo evitar efectos secundarios, hacer el código determinista y fácil de probar.
  • Funciones de orden superior: map, filter, reduce para slices y canales.
  • Cierres y currying: creación de fábricas de funciones y aplicación parcial de argumentos.
  • Composición de funciones: construcción de tuberías de procesamiento de datos sin llamadas anidadas.
  • Manejo de errores con mónadas: alternativa al clásico if err != nil — el patrón Maybe (Option) y Either.
  • Evaluación perezosa y secuencias infinitas: trabajo eficiente con grandes volúmenes de datos.
  • Concurrencia y enfoque funcional: uso de canales y gorutinas en estilo funcional.


Para quién es este libro

  • Desarrolladores Go con al menos 1 año de experiencia que deseen escribir código más limpio y declarativo.
  • Programadores familiarizados con la PF en otros lenguajes que busquen analogías en Go.
  • Arquitectos que busquen reducir la cantidad de estados y mutaciones en microservicios.


Qué aprenderá

  • Cómo escribir funciones sin efectos secundarios y gestionar el estado mediante cierres.
  • Cómo reemplazar bucles con recursión y funciones de orden superior.
  • Cómo construir cadenas de operaciones mediante composición y el patrón «Pipeline».
  • Cómo manejar errores sin comprobaciones anidadas utilizando el enfoque monádico.
  • Cómo diseñar APIs resistentes a cambios y fácilmente testeables.


Todos los ejemplos de código están probados en Go 1.21+ y vienen acompañados de tests. El libro contiene plantillas listas para usar en proyectos reales: desde el manejo de solicitudes HTTP hasta el trabajo con bases de datos en estilo funcional.



Ideal para quienes desean ir más allá de la programación imperativa y dominar un nuevo nivel de abstracción en Go.

Recommendations