Si vous ne pouviez avoir qu'un seul livre sur la programmation dans votre bibliothèque, de quoi s'agirait-il et pourquoi? [fermé]


58

Un par réponse s'il vous plaît. Je vais ajouter mon favori comme réponse.


13
Un Kindle compte-t-il comme un seul livre?
Wizard79

5
Non, jouez juste maintenant!
Paddyslacker

1
Qu'en est-il de l'iPad?
Moshe

3
L'art de la programmation informatique compte-t-il comme un livre ou plusieurs?
David Thornley

2
@ David Je pense que c'est techniquement un livre en plusieurs volumes.
Paddyslacker

Réponses:


69

Code complet 2e éd.

Code complet par Steve McConnell. Je ne pense même pas que cela nécessite des explications. C'est le livre de référence sur la construction de logiciels. Incroyablement bien écrit et couvre tous les aspects du côté pratique (programmation) de la création de logiciels.


+1 pour choisir la deuxième édition aussi - tellement d’améliorations par rapport à la première qu’il s’agit d’un livre différent.
Paddyslacker

+1 - J'ai la traduction italienne. Après cela, je n'ai jamais acheté un autre livre de programmation ou technique traduit dans ma langue, car la traduction était terrible. J'ai dû acheter l'édition anglaise pour comprendre certaines phrases!
Wizard79

Pour ceux qui vivent au Québec, Canada . BAnQ a la version complète de ce livre disponible en ligne à cet endroit: library.books24x7.com.res.banq.qc.ca/toc.asp?bookid=10482 .
HoLyVieR

4
Je ne suis pas d'accord Il est intéressant de noter que le mot immuable n'existe même pas dans ce livre.
Jonas

2
Bien que je conserve mon exemplaire de la première édition, je pense ne jamais y être revenu. La raison en est peut-être que des livres sur chacun des sujets, selon McConnell, sont importants.
Apalala

56

Facile.

Programmeur pragmatique


6
+1 pour être réaliste. Ce livre est pertinent, facile à lire, et probablement le livre que de nombreux développeurs peuvent réellement tirer de la lecture. Trop d’autres sur cette liste sont difficiles et je doute d’avoir été lus de bout en bout.
Spong

Cette réponse est répétée.
Clrod

+1 - mon deuxième livre de programmation préféré derrière Code Complete (et honnêtement, parfois, c'est le premier)
Alan

36

La structure et l'interprétation des programmes informatiques, alias SICP

Quand j'ai vu que le SICP n'était pas encore répertorié, j'ai grimacé de douleur. :)

Pourquoi: Il n'y a rien de plus à ajouter à ce que Norvig loue ce livre comme étant la plus grande introduction à l'informatique jamais écrite. Bon ok, depuis le pourquoi? SICP aborde les bases du logiciel de manière satisfaisante, en soulevant de nombreuses perspectives et questions sur la nature du calcul - dont bon nombre restent des questions en suspens - tout en permettant au lecteur de voir au-delà des aspects superficiels de la faire, ou comment le faire.

alt text http://ecx.images-amazon.com/images/I/41CPGEDXMDL._SL500_AA300_.jpg

Cliquez sur l'image pour accéder au texte gratuit en ligne . Vous pouvez également retrouver facilement les conférences vidéo des auteurs , complétées par la couleur et les vêtements de style années 80.


2
Tous saluent le SICP. OMI, ce devrait être le manuel d'un cours d'introduction obligatoire à la programmation dans toutes les écoles CS. Cela éliminerait certainement les personnes qui ne peuvent pas vraiment réduire leurs dépenses en programmation (beaucoup moins en CS) tout en renforçant les compétences en CS et en programmation pour ceux qui ont un potentiel.
luis.espinal

1
@ luis.espinal Le SICP semble excessif pour la programmation d'initiation (à moins que nous ne parlions d'un programme d'études supérieures). Il y a une raison pour laquelle MIT a abandonné le cours SICP en tant que cours d'introduction ... Néanmoins, je suis d'accord pour dire qu'il est utile de consulter ce livre (et de faire les exercices ...), mais le faire dans un semestre collégial standard serait difficile, même pour un étudiant au-dessus de la moyenne. De plus, l'intro avec Java / Python / Ruby / C est plus pertinente pour la main-d'œuvre, plus vite vous maîtriserez les langages impératifs, mieux ce sera ... Le SICP est idéal par la suite pour élargir vos horizons. Mais cela pourrait être décourageant comme cours d'introduction ...
Cervo,

1
@Cervo - C'est une préoccupation valable, et cela me semble excessif, mais (et c'est une position totalement subjective, je le reconnais), je crois fermement que cela fournit une base plus profonde que celle que l'on trouve généralement avec d'autres approches classiques . Le jury est toujours avec le MIT, maintenant qu’ils ont opté pour Python (certaines raisons étant qu’il dispose également de fonctionnalités de PF et qu’il est très propice au calcul scientifique et à la robotique, ce que Scheme n’est pas.) Rien de mal à Python j'adore la langue), mais le jury sera jusqu'à ce qu'une version python'esque du SICP paraisse.
luis.espinal

2
@ con't - C'est-à-dire que je suggère le SICP non pas à cause de Scheme, mais à cause de son contenu pédagogique. J'aurais en fait suggéré de commencer par l'assemblage (les gens l'ont fait avec beaucoup de succès), mais il n'y a pas de livre d'assemblage (et il n'y en aura probablement jamais) comme le SICP. Le plus proche serait l'encyclopédie de Knuth (et ce serait une overkill.) En ce qui concerne Java , je travaille avec cela depuis 12 ans, et je ne le recommanderais pas pour l'enseignement .. fait le travail, mais c'est horrible comme un PL. C, Python ou Ruby sont des langages bien mieux conçus.
luis.espinal

1
@ con't - de plus, je mets en garde contre l'utilisation d'une langue comme outil pédagogique, car elle est courante. Le courant principal change tous les deux ou trois ans et, avec Java, le langage est simple, mais la tâche consiste à apprendre la JVM, les bibliothèques et l’architecture. Je dirais que pour apprendre le développement d’entreprise Java et .NET à la 4e année du collège. Et je crois (je sais, subjectif ) qu'il est important de fournir de la rigueur dès le début. Nous avons trop de programmeurs point-n-click qui ont eu besoin d’une certaine rigueur au début. J'ai fait beaucoup d'argent en nettoyant la merde qu'ils ont laissée, mais quand même;)
luis.espinal

32

À noter:

Le mois mythique

texte alternatif


1
Si je ne pouvais jamais lire qu'un seul livre sur la programmation, et après avoir fini de le lire, il disparaîtra et je ne verrai jamais un autre livre pour le reste du temps, ce serait ça. Si je devais garder le livre sur mon étagère pour le regarder plus tard ... Ce pourrait être un autre volume, plus orienté référence. +1 quand même!
SingleNegationElimination

J'ai apprécié ce livre et l'ai lu tout au long. Cependant, une grande partie de ce matériel ne s’applique qu’à des projets de très grande envergure impliquant des centaines voire des milliers de personnes, voire des personnes travaillant dessus, comme un système d’exploitation; car c’est ce qu’il tire de son expérience. Je pensais que Code Complete était beaucoup plus utile en termes de connaissances que je pouvais utiliser quotidiennement et qui s’appliquaient à moi.
Despertar

30

Nous avons eu la quatrième édition mais c'est un excellent livre sur les algorithmes!
Chris

@Chris: Je ne pense pas qu'il existe une quatrième édition. La troisième édition date de septembre 2009, donc c'est nouveau.
Jonas

Errr, deuxième édition avec la couverture verte.
Chris

Ceci est le manuel requis pour ma classe ce terme. Je suis réconforté par le fait qu’elle figure sur la liste et qu’elle soit si appréciée par rapport à la question initiale de SO!
Pops

28

Modèles de conception: éléments d'un logiciel orienté objet réutilisable

C'est le livre à lire sur la conception et l'architecture de la POO. Les modèles sont bons lorsqu'ils sont utilisés correctement, mais je pense que la valeur réelle de ce livre est qu'il vous fournit une boîte à outils contenant des idées à utiliser lors de la conception.

texte alternatif


La programmation orientée objet ne représente pas les limites de la programmation.
Inaimathi

Depuis que les catalogues de modèles sont en abondance (ce qui est ce livre), la valeur de ce livre a considérablement diminué avec le temps.
Steven Evers

1
Est-ce que beaucoup de gens lisent celui-ci de bout en bout? Je trouve que c'est plus une référence qu'un livre. (Et une référence que vous ne pouvez pas rechercher.)
idbrii



25

Je viens de compter mes livres aujourd'hui. 23 d'entre eux. Cela dépend de ce sur quoi je travaille. Je suppose que la réponse intemporelle est "le langage C", par Kernighan et Ritchie .

entrez la description de l'image ici


3
L'un des meilleurs livres d'enseignement des langues de l'histoire de l'informatique. Un bon exemple de la façon dont un livre de programmation devrait être écrit.
Wizard79

1
Et vaut la peine d'avoir sur l'étagère, il est plus rapide de trouver les codes de format printf dans le livre que dans la documentation d'aide de MSDN
Martin Beckett

19

Travailler efficacement avec Legacy Code par Michael Feathers.

Il contient de nombreux bons conseils sur la manière de tester et de gérer une base de code existante, dont je ne connaissais pas la plupart avant de lire ce livre. A lire absolument, même si le code existant que vous utilisez est votre propre code que vous avez écrit hier.

Travailler efficacement avec le code hérité


Quelle belle couverture.
Pops

Ceci, étant donné que c'est mon objectif actuel: obtenir le code que j'ai écrit avant d'être "piloté par les tests" dans un état testable.

+1 Plusieurs fois oui. Ce livre m'a beaucoup aidé à mettre à jour l'ancien code.
Grant Palin

18

1
Je ne suis pas sûr que cela puisse être qualifié de "1 livre" (à moins que vous ne vouliez vraiment dire "que le volume 1")
Inaimathi

J'ai toute sa série, mais je me contenterais du volume 1. (Mon premier cours d'informatique en a été enseigné en 1967. Cela n'a pas de prix.) "Connais tes infrastructures de données".
Ira Baxter

15

Les livres Java indispensables:

Effective Java Par Josh Bloch

texte alternatif

La concurrence de Java en pratique Par Brian Goetz, et. Al.

texte alternatif

Java Puzzlers Par Josh Bloch, Neal Gafter

texte alternatif


3
+1 pour Java efficace. Amélioré considérablement mes compétences en Java.
Ryan Hayes

+1 pour Effective Java , -1 pour ignorer Un par réponse, s'il vous plaît .
Mark Booth le

Le seul ensemble de livres Java que vous devriez avoir
Crowie


9

Gödel, Escher, Bach.

texte alternatif!


1
Ha! C'était mon choix dans la liste des livres non liés à la programmation! Je suppose que cela le rend inclassable?
Paddyslacker

J'ai vraiment aimé ce livre, il a été fortement recommandé par mon professeur de théorie de l'informatique à UW Madison - m'a beaucoup aidé en essayant de comprendre de quoi diable il parlait.
Peter Turner

@Paddyslacker, GEB passe beaucoup de temps à parler de calculabilité et de divers concepts informatiques.

5

Le programmeur pragmatique: de compagnon à maître (Andrew Hunt et David Thomas)


4

Getting Things Done (David Allen) vous apprend à gérer les milliers de petites tâches que vous devez accomplir dans votre travail quotidien de développeur de logiciels. Bien qu’elle ne soit pas spécifiquement destinée aux développeurs, c’est une aide précieuse, car le développement de logiciels implique généralement un très grand nombre de petites tâches qui doivent être effectuées de manière prioritaire. Par exemple: quelles nouvelles fonctionnalités à implémenter, quels bugs à corriger, quelles parties du code à refactoriser, quelles parties du code à suspendre ou à réessayer, etc.





2

Est-ce qu'un iPad compte? Je voudrais dire que mon n ° 1 sur ma bibliothèque serait un navigateur Web et une capacité de recherche. Les API en ligne et les références sont le meilleur endroit et cela dépend de mon ensemble de projet actuel.


2
Non ce n'est pas. Voir le commentaire sur un Kindle ci-dessus. Cela dit, j'adore l'iPad quand même. Ce peut être une ressource précieuse, mais ce n’est pas encore un vrai livre. +1, je suis d'humeur de fanboy. :)
Moshe


2

Les "pièges du développement orienté objet" de Bruce F. Webster

Nous avons trop de développeurs "OO" qui ne savent toujours pas ce qu'est un objet ou une classe, ni à quoi ça sert; Je ne sais pas à quoi ressemble une bonne programmation orientée processus, modulaire et structurée; et parviennent en quelque sorte à bricoler du code pseudo-procédural mal fait avec des classes.

Ce livre (plus quelques vieux 70's sur le design structuré) aiderait beaucoup ces pauvres âmes à enfin comprendre à quoi devrait ressembler une bonne orientation objet.


De plus, il est probable que si je devais choisir un livre et un livre à côté de celui-ci, je ne choisirais pas un livre spécifique à la technologie .


1

texte alternatif

C'est l'un des rares livres de programmation que j'ai conservés lorsque j'ai commencé à programmer. J'avais l'habitude de prêter cela beaucoup aux personnes qui débutaient. Maintenant, pas tellement, puisque C n’est plus le premier langage de programmation de beaucoup de gens. Il décrit très bien ce qui se passe dans les coulisses et ses descriptions sur les pointeurs apportent une réelle clarté à ce qui est par ailleurs un sujet très déroutant pour beaucoup.


1

Jon Skeet "C # in Depth"

texte alternatif


1
En fait, je n'ai pas aimé le livre de Jon. Les informations étaient bonnes, mais il y avait tellement de choses dans le livre "oh, ceci est important dans 10 chapitres à partir de maintenant" et le texte était très mal présenté.
Steven Evers

2
Soyez conscient qu'il existe une deuxième édition, qui est une mise à jour de la première et couvre également le C # 4.
Grant Palin

1

Conception d'objet: rôles, responsabilité et collaborations

texte alternatif

C'est de loin mon livre de programmation préféré (même s'il ne dépend pas de la langue). À mon humble avis, le livre qui décrit le mieux la façon de concevoir des objets en relation avec leurs cousins ​​/ frères / voisins. Un must dans toute bibliothèque sérieuse.


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.