Se você pudesse ter apenas um livro relacionado à programação em sua estante, o que seria e por quê? [fechadas]


Respostas:


69

Código Completo 2ª Ed.

Código concluído por Steve McConnell. Eu nem acho que precisa de explicação. É o livro definitivo sobre construção de software. Incrivelmente bem escrito e abrange todos os aspectos do lado prático (programação) da criação de software.


+1 por escolher a segunda edição também - tantas melhorias em relação à primeira que é um livro diferente.
Paddyslacker 04/04/10

+1 - Eu tenho a tradução em italiano. Depois disso, nunca comprei outro livro técnico ou de programação traduzido no meu idioma, pois a tradução foi terrível. Eu tive que comprar a edição em inglês para entender algumas frases!
precisa saber é o seguinte

Para quem mora em Quebec, Canadá . O BAnQ tem a versão completa deste livro disponível on-line neste local: library.books24x7.com.res.banq.qc.ca/toc.asp?bookid=10482 .
HoLyVieR

4
Eu não posso concordar. É interessante que a palavra imutável nem exista neste livro.
Jonas

2
Embora guarde minha cópia da primeira edição, acho que nunca voltei a ela. O motivo pode ser o fato de ter livros sobre cada um dos tópicos que McConnell diz serem importantes.
Apalala 20/03

56

Fácil.

Programador Pragmático


6
+1 por ser realista. Este livro é relevante, fácil de ler e provavelmente o livro que muitos desenvolvedores podem realmente se beneficiar da leitura. Muitos outros nesta lista são difíceis e duvido que tenham sido lidos de capa a capa.
spong

Esta resposta é repetida.
clrod

+1 - meu livro de programação segundo favorito trás Code Complete (e honestamente, às vezes, é em primeiro lugar)
Alan

36

A Estrutura e Interpretação de Programas de Computador, também conhecida como SICP

Quando vi que o SICP ainda não estava listado, fiz uma careta de dor. :)

Por quê: Não há mais nada a acrescentar a Norvig elogiar este livro como a melhor introdução à ciência da computação já escrita. Bem, ok, desde o Por quê? foi solicitado: o SICP cobre os fundamentos do software de uma maneira satisfatória e profunda, levantando muitas perspectivas e questões sobre a natureza da computação - algumas das quais permanecem questões em aberto - enquanto leva o leitor a ver além dos aspectos superficiais de dizer à máquina o que fazer ou como fazê-lo.

texto alternativo http://ecx.images-amazon.com/images/I/41CPGEDXMDL._SL500_AA300_.jpg

Clique na imagem para obter o texto livre online . Você também pode encontrar facilmente as palestras em vídeo dos autores , com cores e roupas no estilo dos anos 80.


2
Todos saudam o SICP. Na IMO, deve ser o livro de um curso introdutório obrigatório de programação em todas as escolas de CS. Certamente eliminaria pessoas que realmente não conseguem cortá-lo na programação (muito menos SC), ao mesmo tempo em que fortalece as habilidades de programação e programação para aqueles com potencial.
Luis.espinal 18/10/10

11
@ luis.espinal O SICP parece um exagero para a programação introdutória (a menos que estejamos falando de pós-graduação). Há uma razão pela qual o MIT abandonou o curso SICP como seu curso de introdução ... Ainda assim, concordo que é valioso passar por este livro (e fazer os exercícios ...), mas fazer isso em um semestre normal da faculdade seria difícil para um aluno acima da média. Além disso, a introdução ao Java / Python / Ruby / C é mais relevante para a força de trabalho, quanto mais alguém se acostumar com linguagens imperativas, melhor ... O SICP é ótimo para expandir seus horizontes. Mas pode ser desanimador como um curso de introdução ...
Cervo

11
@Cervo - É uma preocupação válida, e parece um exagero, mas (e esta é uma posição completamente subjetiva, eu reconheço), acredito firmemente que fornece uma base mais profunda do que normalmente se encontra com outras abordagens convencionais . O júri ainda está de fora com o MIT agora que eles mudaram para o Python (algumas das razões são que ele também possui recursos de FP e é altamente passível de computação científica e robótica, o que Scheme não é). adoro a linguagem), mas o júri seria publicado até que uma versão Python do SICP fosse lançada.
Luis.espinal

2
@ con't - Ou seja, sugiro o SICP não por causa do Scheme, mas por causa do seu conteúdo pedagógico. Na verdade, eu sugerira começar com a montagem (as pessoas fizeram isso com sucesso), mas não existem livros de montagem (e provavelmente nunca haverá) como o SICP. O mais próximo seria a enciclopédia de Knuth (e isso seria um exagero.) Quanto ao java , eu trabalho com ele há 12 anos e não o recomendo para o ensino. Faz o trabalho, mas é horrível como um PL. C, Python ou Ruby são linguagens muito melhor projetadas.
Luis.espinal

11
@ cont - também, eu alertaria contra o uso de uma linguagem como uma ferramenta pedagógica, porque é mainstream. O mainstream muda a cada 2-3 anos e, com Java, a linguagem é simples, mas a tarefa é aprender a JVM, as bibliotecas e a arquitetura. Eu diria para aprender o desenvolvimento empresarial Java e .NET no 4º ano da faculdade. E acredito (eu sei, subjetivo ) que é importante fornecer rigor desde o início. Temos muitos programadores point-n-click por aí que precisavam de algum rigor desde o início. Eu fiz um monte de dinheiro limpar a porcaria que deixaram para trás, mas ainda;)
luis.espinal

32

Vale a pena mencionar:

O Mítico Homem-Mês

texto alternativo


11
Se ao menos eu pudesse ler um livro sobre programação e, depois que terminasse de ler, ele desaparecesse E nunca mais veria outro livro pelo resto do tempo, seria esse. Se eu mantivesse o livro na minha estante para olhar mais tarde ... Pode ser outro volume mais orientado para referência. +1 de qualquer maneira!
SingleNegationElimination

Gostei deste livro e o li o tempo todo. No entanto, grande parte do material se aplica apenas a projetos de grande escala, com centenas ou mesmo milhares ou pessoas trabalhando nele como um sistema operacional; pois é disso que ele extrai sua experiência. Eu pensei que o Code Complete era muito mais útil em termos de conhecimento que eu poderia usar todos os dias e que se aplicava a mim.
Despertar

30

Tivemos a quarta edição, mas este é um ótimo livro sobre algoritmos!
Chris

@ Chris: Eu não acho que exista uma quarta edição. A terceira edição é de setembro de 2009, então é nova.
Jonas

Errr, segunda edição com a capa verde.
Chris

Este é o livro didático necessário para minha classe neste termo. Estou muito animado por estar na lista aqui e por ter uma classificação tão alta na pergunta SO original!
Pops

28

Padrões de Design: Elementos de Software Orientado a Objetos Reutilizáveis

Este é o livro para ler sobre arquitetura e design de OOP. Os padrões são bons quando usados ​​adequadamente, mas acho que o valor real deste livro é que ele fornece uma caixa de ferramentas de idéias para usar ao projetar.

texto alternativo


OOP não representa os limites da programação.
Inaimathi

Como os catálogos de padrões estão em abundância (como é este livro), o valor deste livro diminuiu significativamente ao longo do tempo.
Steven Evers

11
Muitas pessoas leem este livro de capa a capa? Acho que é mais uma referência do que um livro. (E uma referência que você não pode procurar.)
idbrii


25

Refatoração: aprimorando o design do código existente

texto alternativo


25

Eu apenas contei meus livros hoje. 23 deles. Depende do que estou trabalhando. Acho que a resposta atemporal é "linguagem C", de Kernighan e Ritchie .

insira a descrição da imagem aqui


3
Um dos melhores livros de ensino de idiomas da história da computação. Um bom exemplo de como um livro de programação deve ser escrito.
usar o seguinte comando

11
E vale a pena ter na prateleira, é mais rápido para encontrar os códigos de formato printf no livro do que em ajuda docs MSDN
Martin Beckett

19

Trabalhando efetivamente com o Legacy Code, de Michael Feathers.

Ele contém muitas boas dicas de como obter uma base de código existente sob teste e gerenciável, a maioria das quais eu não conhecia até ler este livro. Uma leitura obrigatória, mesmo que o código legado com o qual você esteja trabalhando seja o seu próprio código que você escreveu ontem.

Trabalhando efetivamente com o código herdado


Que ótima cobertura.
Pops

Este é o meu foco atual: colocar o código que escrevi antes de ser "testado" em um estado testável.

+1 Muitas vezes sim. Este livro me ajudou bastante na atualização de códigos antigos.
Grant Palin

18

11
Não estou certo de que este qualifica como "um livro" (a menos que você realmente quer dizer "apenas Volume 1")
Inaimathi

Eu tenho toda a série dele, mas me contentaria com o Volume 1. (Minha primeira aula de ciência da computação foi ministrada em 1967. Foi inestimável). "Conheça as tuas estruturas de dados".
Ira Baxter

15

Os livros Java obrigatórios:

Java eficaz por Josh Bloch

texto alternativo

Concorrência Java na Prática Por Brian Goetz, et. al.

texto alternativo

Java Puzzlers Por Josh Bloch, Neal Gafter

texto alternativo


3
+1 para Java efetivo. Melhorei bastante minhas habilidades em Java.
Ryan Hayes

+1 para Java efetivo , -1 para ignorar um por resposta, por favor .
22868 Mark Booth

A um conjunto de livros de Java você deve ter
Crowie


9

Gödel, Escher, Bach.

texto alternativo!


11
Ha! Essa foi minha escolha na lista de livros não relacionados à programação! Eu acho que isso torna não classificável?
Paddyslacker 17/09/10

Gostei muito deste livro, que foi altamente recomendado pelo meu professor de Teoria da Computação na UW Madison - ajudou muito ao tentar entender do que diabos ele estava falando.
Peter Turner #

@ Paddyslacker, GEB gasta bastante tempo conversando sobre computabilidade e vários conceitos de ciência da computação.

5

O Programador Pragmático: De Journeyman a Master (Andrew Hunt e David Thomas)


4

Como fazer as coisas (David Allen) ensina a lidar com as milhares de pequenas tarefas que você precisa realizar no seu trabalho diário como desenvolvedor de software. Embora não seja especificamente voltado para desenvolvedores, é definitivamente uma ajuda inestimável, pois o desenvolvimento de software geralmente envolve um número muito grande de pequenas tarefas que precisam ser realizadas de maneira priorizada. Por exemplo: quais novos recursos implementar, quais erros corrigir, quais partes do código refatorar, quais partes do código devem ser repousadas ou testadas novamente, etc.




2

O Zen da otimização de código de Michael Abrash

O Zen da otimização de código

Uma leitura obrigatória para programadores em tempo real - mesmo que as informações específicas do processador estejam desatualizadas, a mentalidade é inestimável.


2

Um iPad conta? Gostaria de dizer que o meu número 1 na estante seria um navegador da Web e capacidade de pesquisar. A API e as referências on-line são o melhor local e dependeria do meu conjunto de projetos atual.


2
Não, não faz. Veja o comentário sobre um Kindle acima. Dito isto, eu amo o iPad de qualquer maneira. Pode ser um recurso valioso, mas ainda não é um livro real. +1, estou de bom humor. :)
Moshe


2

As Armadilhas do Desenvolvimento Orientado a Objetos de Bruce F. Webster

Temos muitos desenvolvedores "OO" que ainda não sabem o que é um objeto ou classe ou para que serve; não sabe como é a programação OO, processual, modular e estruturada; e, de alguma forma, consegue misturar códigos pseudo-processuais mal elaborados junto com classes.

Este livro (mais alguns anos 70 em design estruturado) ajudaria bastante essas pobres almas a entender como deveria ser uma boa orientação a objetos.


Além disso, as chances são de que, se eu fosse forçado a escolher um livro e um livro somente ao lado deste, não escolheria um livro específico para a tecnologia .


1

texto alternativo

É um dos poucos livros de programação que eu mantive quando comecei a programar. Eu costumava emprestar isso muito para as pessoas que estavam começando pela primeira vez. Agora, nem tanto, já que C não é mais a primeira linguagem de programação de muitas pessoas. Ele faz um trabalho maravilhoso ao descrever o que está acontecendo nos bastidores e suas descrições sobre indicadores trazem uma verdadeira clareza ao que, de outra forma, é um tópico muito confuso para muitos.


1

O "c # in Depth" de Jon Skeet

texto alternativo


11
Na verdade, eu não gostei do livro de Jon. As informações eram boas, mas havia tanto "oh, isso é importante daqui a 10 capítulos" no livro, de tal forma que parecia muito mal disposto.
Steven Evers

2
Esteja ciente de que há uma segunda edição, que é uma atualização do primeiro e também abrange C # 4.
Grant Palin

1

Design de Objetos: Funções, Responsabilidade e Colaborações

texto alternativo

Este é de longe o meu livro de programação favorito (mesmo que não seja dependente da linguagem). Na minha humilde opinião, é o livro que apresenta melhor o caso de como projetar objetos relacionados aos seus primos / irmãos / vizinhos. Um item obrigatório em qualquer estante de programadores séria.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.