Programação Funcional em Go (Golang)
300 páginas
Portuguese
PDF
4.5

Programação Funcional em Go (Golang)

Programação Funcional em Go (Golang)

Autor:

Ano:

Resumo:

O livro «Programação Funcional em Go (Golang)» é um guia prático que mostrará como aplicar os princípios da programação funcional (PF) na linguagem imperativa Go. Diferentemente de Haskell ou Scala, Go não é uma linguagem puramente funcional, mas seus poderosos recursos — closures, funções de ordem superior, interfaces e tipagem forte — permitem implementar eficazmente idiomas de PF para criar código confiável e de fácil manutenção.



O livro é destinado a desenvolvedores Go de nível intermediário e avançado que desejam ir além das abordagens padrão de POO e aprender a escrever código mais conciso, previsível e testável. Conhecimento básico da sintaxe do Go é obrigatório, mas experiência em programação funcional não é necessária — todos os conceitos são introduzidos do zero.



O que você aprenderá:

  • Fundamentos de PF em Go: funções puras, imutabilidade de dados, ausência de efeitos colaterais.
  • Closures e funções de ordem superior: como criar fábricas de funções, currying e composição.
  • Trabalho com coleções: implementação de map, filter, reduce sem loops, usando genéricos (Go 1.18+).
  • Mônadas e functores: exemplos práticos de Maybe, Either e mônada IO para tratamento de erros e trabalho com dados externos.
  • Computação preguiçosa e sequências infinitas: otimização de desempenho através de operações adiadas.
  • Testes e depuração: como a PF simplifica os testes unitários e torna o código autodocumentável.
  • Projetos reais: desenvolvimento de uma API REST, um parser de configurações e um pipeline de processamento de dados em estilo funcional.


Cada capítulo contém código em Go que pode ser executado imediatamente, além de exercícios para fixação do conteúdo. Você aprenderá a evitar erros comuns (mutação de estado global, loops aninhados complexos) e a construir uma arquitetura resistente a mudanças.



Ao final do livro, você será capaz de:

  • Escrever funções que são fáceis de combinar e reutilizar.
  • Reduzir o número de bugs ao eliminar efeitos colaterais.
  • Aplicar padrões funcionais em código de produção em Go.


Este livro não é teoria abstrata, mas uma ferramenta que o tornará um desenvolvedor Go mais confiante e eficiente.

Recommendations