Sugestões de leitura
Autor: LG | Publicado: 2012-02-09T12:24:00-02:00


Seguidamente me pedem algumas recomendações de livros. Então, montei esta lista aqui. Ela está dividida em um grupo de livros genéricos, que se aplicam a qualquer linguagem de programação, e outro específico de C++. Recomendo ler os livros mais ou menos na ordem em que aparecem listados. Sobretudo recomendo que todo mundo comece lendo o "The Pragmatic Programmer, From Journeyman to Master."

Vamos às listas: 


Desenvolvimento de software em geral, independente de linguagem:

&nbsp;&nbsp;&nbsp; The Pragmatic Programmer, From Journeyman to Master. David Thomas e Andrew Hunt.
 Este livro é um divisor de águas na carreira de um programador. Depois 
de lê-lo, você nunca mais será o mesmo. 


&nbsp;&nbsp;&nbsp; Extreme Programming Explained. Kent Beck. É fundamental conhecer os conceitos apresentados 
neste livro, mesmo que não se vá aplicar tudo o tempo todo (BTW, o 
próprio Beck diz que nem todo o tipo de projeto deve ser feito em 
eXtreme Programming).

&nbsp;&nbsp;&nbsp; Refactoring: Improving the Design of Existing Code. Martin
 Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts. Bastante 
indicado para quem trabalha com código herdado ou com equipes muito 
heterogêneas.
&nbsp;&nbsp;&nbsp; 
&nbsp;&nbsp;&nbsp; The Agile Manifesto. Kent Beck et alli. 
http://agilemanifesto.org/. Recomendo também uma lida nas páginas 
adjacentes, como a de princípios. É tudo bem curto e se lê em poucos 
minutos.

&nbsp;&nbsp;&nbsp; Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps. Mike Clark. Embora ele use java nos exemplos, as ideias ajudam em qualquer linguagem.
&nbsp;&nbsp;&nbsp; 
&nbsp;&nbsp;&nbsp; Agile Software Development (The Agile Software Development Series). Alistair Cockburn.

&nbsp;&nbsp;&nbsp; Planning Extreme Programming. Kent Beck e Martin Fowler. 
Interessante para quem pretende gerenciar projetos ou ter uma 
participação maior na gerência de seu projeto. Mesmo que não trabalhe em projetos XP, vale a pena ler.

&nbsp;&nbsp;&nbsp; Code Reading: The Open Source Perspective (Effective Software Development Series).
 Diomidis Spinellis. Ler código é uma habilidade extremamente 
importante. Apesar dos comentários depreciativos&nbsp; que a gente encontra 
em vários sites sobre o estilo do autor, o livro vale a pena; traz ideias bem interessantes e chama a atenção para a necessidade desta 
habilidade. De quebra, o leitor também pode se sensibilizar e passar a 
tentar escrever código lembrando que outros humanos o lerão. BTW, li uma
 frase um dia desses que dizia algo como: "Escreva o código sempre 
pensando que o próximo programador a dar manutenção nele será um 
psicopata violento que sabe o seu endereço."

C++:

&nbsp;&nbsp;&nbsp; Effective C++:50 Specific Ways to Improve Your Programs and Design. Scott Meyers. Leitura (e compreensão) obrigatória para qualquer candidato a programador C++ verdadeiro.

&nbsp;&nbsp;&nbsp; More Effective C++: 35 New Ways to Improve Your Programs and Designs. Scott Meyers. Mais básico que o anterior. Talvez muita gente não aprenda nada de novo com este.

&nbsp;&nbsp;&nbsp; Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library. Scott Meyers. Leitura (e compreensão) obrigatória para qualquer candidato a programador C++ verdadeiro.

&nbsp;&nbsp;&nbsp; The C++ Standard Library: A Tutorial and Reference. Nicolai M. Josuttis. Leitura obrigatória para programadores C++ médios em diante.

&nbsp;&nbsp;&nbsp; The C++ Programming Language. Bjarne Stroustrup. Leitura 
obrigatória para programadores C++. Ponto a mais para que pronunciar 
corretamente o nome do autor ;-).

&nbsp;&nbsp;&nbsp; Effective C++:50 Specific Ways to Improve Your Programs and Design.
 Scott Meyers. Não foi engano... Está duplicado de propósito. Quando 
você tiver chegado aqui, deve reler este livro. Ele é pequeno, rápido 
para reler. E provavelmente, na primeira vez que você leu, você não 
entendeu alguma coisa...



&nbsp;&nbsp;