Livros

Título Por que eu recomendo?
Capa do livro Código Limpo, do Robert C. Martin

Código Limpo - Robert C. Martin (Uncle Bob)

Este livro é leitura imprescindível para qualquer desenvolvedor que deseje escrever código de qualidade. Através de uma série de exemplos, ele ensina uma série de práticas que, se aplicadas, melhoram exponencialmente a qualidade do nosso código, tornando-o mais simples, fácil de compreender, e o mais importante, fácil de manter.

Minha experiência com o livro foi transformadora, e a mudança foi bastante rápida. Em poucas semanas, minha atitude com relação à programação mudou, e é aí que está o maior trunfo do livro: ele nos ensina a programar com empatia.

Capa do livro Arquitetura Limpa, do Robert C. Martin

Arquitetura Limpa - Robert C. Martin (Uncle Bob)

Neste livro, Uncle Bob destila sua vasta experiência numa série de lições extremamente úteis para o desenho de sistemas, trazendo valiosas técnicas para controlar o nível de acoplamento entre componontes de software.

Algumas lições que considero valiosas no livro são:

  • O conceito de Arquitetura Gritante

  • Inversão de controle como ferramenta de desacoplamento das camadas de uma aplicação

  • Qualquer tipo de aplicação pode ter uma arquitura limpa, do código embarcado a um conjunto de microserviços

Capa do livro Refactoring, do Martin Fowler

Refatoração: Aperfeiçoando o Projeto de Código Existente - Martin Fowler

Através de uma de uma série de exemplos práticos, Martin Fowler ensina um número de técnicas, das bases às mais avançadas, capazes de transformar praticamente base de código ruim em uma base de código exemplar. E ele faz isso utilizando testes unitários como uma rede de segurança e TDD (Test Driven Development) como processo de evolução iterativa do código em processo de refatoração.

Recentemente, Fowler lançou a segunda edição do livro. A grande diferença entre a primeira e a segunda versões é a linguagem de programação utilizada nos exemplos. Enquanto a primeira lançada em 2004 conta com exemplos em Java, a segunda versão traz exemplos em Javascript.

No fim, independente da versão que você escolher, seu repertório de técnicas de refatoração irá muito além do básico apresentado no livro Clean Code (Robert C. Martin).

Capa do livro Growing Object-Oriented Software, Guided by Tests, de Steve Freeman e Nat Pryce

Growing Object-Oriented Software, Guided by Tests - Steve Freeman, Nat Pryce

Neste livro, os autores Steve Freeman e Nat Pryce apresentam os processos que eles usam, e os princípios de design que buscam seguir. Eles apresentam como TDD pode ser usado em múltiplos níveis para dirigir os recursos e a estrutura de códigos orientados a objeto. Leitura indispensável para quem quiser apredender TDD em profundidade.

Capa do livro Avalie o Que Importa, de John Doerr

Avalie o Que Importa - John Doerr

Este livro mudou para sempre a minha forma de encarar metas e objetivos. Apresentando a história de várias empresas de sucesso, como Intel, Google e YouTube, o autor mostra como os OKRs (Objective Key Results) são uma ferramenta poderosa para trazer alinhamento e força para uma organização. Quando todos remam para o mesmo lado, é mais fácil avançar rápido e na direção certa.

Capa do livro Avalie o Que Importa, de Nicole Forsgren Phd, Jez Humble e Gene Kim

Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations - Nicole Forsgren Phd, Jez Humble e Gene Kim

Existem centenas de frameworks e técnicas por aí que prometem tornar seu time "mais ágil", entregas melhores e com mais qualidades. Mas quantas vezes mudamos a forma de fazer as coisas e depois nos perguntamos: será que as coisas melhoraram mesmo? Estamos mais ágeis? Mais rápidos?
Em Accelerate, os autores mostram como identificaram os dois pares de contra-métricas que resumem a eficiência e eficácia de uma organização, sendo eles o DF (Deployment Frequency) e CFR (Change Failure Rate), e MTTR (_Mean Time To Restore) e MTBF (Mean Time Between Failures).
É um livro fascinante e leitura obrigatória para quem trabalha com desenvolvimento de software com seriedade.

Outras opções para compartilhar:
comments powered by Disqus