Beautiful C++: 30 regras práticas para um código melhor
352 páginas
Portuguese
PDF
4.5

Beautiful C++: 30 regras práticas para um código melhor

Beautiful C++: 30 regras práticas para um código melhor

Autor:

Ano:

Resumo:

Introdução

O livro «Beautiful C++: 30 Core Guidelines for Writing Clean, Safe, and Fast Code» foi publicado em 2021 pela editora Addison-Wesley. Os autores — J. Guy Davidson e Kate Gregory — são especialistas renomados na comunidade C++, membros do comitê de padronização e autores de diversos artigos técnicos. Diferente de livros acadêmicos, esta obra não ensina a linguagem do zero, mas oferece um conjunto significativo de recomendações práticas baseadas nas C++ Core Guidelines (recomendações de Bjarne Stroustrup e Herb Sutter).

Sobre o que é o livro

O livro é composto por 30 capítulos, cada um dedicado a uma regra (guideline). As regras são agrupadas em seções temáticas: segurança, expressividade, desempenho, gerenciamento de memória, design de interfaces, etc. Os autores não apenas listam diretivas secas — eles explicam detalhadamente por que a regra é importante, mostram erros típicos (antipadrões) e oferecem alternativas corretas em C++17 e C++20. Cada capítulo termina com um resumo e uma lista de referências para estudo aprofundado.

Para quem é este livro

O livro é voltado para desenvolvedores C++ praticantes que já têm experiência em escrever código (pelo menos 1–2 anos) e desejam melhorar sua qualidade. Será útil para:

  • Desenvolvedores migrando de C++11/14 para C++17/20;
  • Participantes de code review que buscam critérios objetivos de avaliação;
  • Líderes técnicos e arquitetos que estabelecem padrões de codificação na equipe;
  • Estudantes de graduação avançada que estudam programação industrial.

O que o leitor aprenderá

Após a leitura, o leitor será capaz de:

  • Escrever código seguro — evitar comportamento indefinido, vazamentos de memória, condições de corrida;
  • Usar RAII (Resource Acquisition Is Initialization) para gerenciamento automático de recursos;
  • Aplicar ponteiros inteligentes (unique_ptr, shared_ptr, weak_ptr) em vez de new/delete brutos;
  • Projetar interfaces expressivas — usar const, noexcept, explicit, conceitos (C++20);
  • Otimizar o desempenho sem prejudicar a legibilidade — escolher contêineres, algoritmos, evitar cópias;
  • Trabalhar com exceções corretamente: não abusar, mas também não evitá-las onde são apropriadas;
  • Usar recursos modernos do C++17/20: structured bindings, if constexpr, std::optional, std::variant, ranges;
  • Realizar code review com base em critérios objetivos, e não em preferências pessoais.

Pontos fortes

1. Foco prático. Cada regra é acompanhada de exemplos reais de código (frequentemente trechos de projetos open source). Os autores mostram como o código "ruim" se transforma em "bonito" passo a passo.

2. Atualidade. O livro é focado em C++17 e C++20 — os padrões mais recentes na época do lançamento. Aborda conceitos, ranges, corrotinas (no contexto das regras).

3. Autoridade. Ambos os autores fazem parte do comitê ISO C++ e participam diretamente do desenvolvimento das Core Guidelines. O livro não é apenas uma recontagem, mas uma seleção criteriosa com comentários internos.

4. Estrutura. 30 regras é uma quantidade ideal para estudo sequencial. O livro pode ser lido na íntegra ou seletivamente, consultando o capítulo necessário conforme a situação.

5. Linguagem. Escrito de forma viva e acessível, sem academicismo excessivo. Mesmo tópicos complexos (semântica de movimento, encaminhamento perfeito) são explicados em nível intuitivo.

Para quem é recomendado

O livro será útil para todos que programam em C++ e desejam fazê-lo melhor. Recomendo especialmente para equipes que estão implementando ou planejam implementar

Recommendations