More Effective C#
304 páginas
Portuguese
PDF
4.5

More Effective C#

More Effective C#

Autor:

Ano:

Resumo:

Introdução

O livro More Effective C# (Bill Wagner, 2017) é a continuação do guia icônico Effective C#, voltado para desenvolvedores que já dominam os fundamentos da linguagem e desejam avançar para o próximo nível. Diferente de muitos livros didáticos, este não ensina sintaxe — ele ensina o pensamento de um programador C# profissional. O autor, um especialista reconhecido na área .NET e membro da equipe de desenvolvimento do C#, compartilha 50 dicas específicas (items) que ajudarão a escrever um código mais confiável, performático e sustentável.

Sobre o que é o livro

O livro é composto por 5 partes, cada uma dedicada a uma área específica do desenvolvimento em C#:

  • Fundamentos do trabalho com tipos — como projetar corretamente classes, structs e interfaces, evitando erros comuns.
  • Performance e otimização — gerenciamento de memória, garbage collection, assincronicidade e paralelismo.
  • LINQ e programação funcional — uso eficiente de consultas, avaliação lazy e imutabilidade.
  • Exceções e tratamento de erros — como construir sistemas robustos usando contratos e exceções.
  • Recursos modernos do C# (até a versão 7.0) — tuplas, funções locais, pattern matching e outras funcionalidades.

Cada dica (item) é uma seção independente que pode ser lida em qualquer ordem. Wagner não apenas lista regras, mas explica por que agir de uma forma e não de outra, fundamentando seus argumentos com exemplos de código e referências ao funcionamento interno do .NET.

Para quem é este livro

O livro é destinado a desenvolvedores experientes que já programam em C# há pelo menos um ano e já enfrentaram projetos reais. Para iniciantes, pode parecer complexo — o autor pressupõe conhecimento de delegates, LINQ, programação assíncrona e fundamentos do CLR. No entanto, se você sente que seu código está "poluído" ou deseja entender como evitar armadilhas comuns de performance, este livro se tornará seu guia de consulta essencial.

O que o leitor aprenderá

  • Como escolher corretamente entre classes e structs, considerando semântica e performance.
  • Por que evitar structs mutáveis é um dos principais princípios para um código confiável.
  • Como usar eficientemente async/await sem bloqueios ou deadlocks.
  • Segredos do trabalho com LINQ: quando usar execução adiada e quando usar execução imediata.
  • Como escrever código thread-safe sem sincronização excessiva.
  • Por que exceções não devem fazer parte do fluxo normal de controle.
  • Como usar novos recursos do C# 7.0 (tuplas, funções locais, ref returns) para simplificar o código.
  • Métodos de profile e benchmarking para encontrar gargalos.

Pontos fortes

Foco prático. Cada dica é acompanhada de código real que pode ser aplicado imediatamente em um projeto. O autor não dá conselhos abstratos — ele mostra como uma construção específica impacta a performance ou a legibilidade.

Compreensão profunda do CLR. Wagner frequentemente explora "os bastidores" do .NET, explicando como funcionam o garbage collection, a compilação JIT e a tipagem. Isso ajuda a tomar decisões conscientes, em vez de seguir padrões cegamente.

Atualidade. Apesar de o livro ter sido lançado em 2017, a maioria das dicas continua relevante para C# 8, 9 e 10. Os princípios fundamentais (evitar alocações, lidar corretamente com exceções, usar LINQ de forma eficiente) não envelhecem.

Estrutura. O livro é prático como referência — você pode abrir qualquer seção e obter uma recomendação completa. Cada item termina com um breve resumo.

Para quem é recomendado

O livro será útil para:

  • Desenvolvedores de nível Pleno e Sênior

Recommendations