Il n'y a pas si longtemps, j'étais un codeur débutant, essayant de trouver de bons livres / tutoriels sur les langues que je voulais apprendre. Même encore, il y a des moments où j'ai besoin de choisir une langue assez rapidement pour un nouveau projet sur lequel je travaille. Le but de cet article est de documenter certains des meilleurs tutoriels et livres pour ces langues. Je vais commencer la liste avec le meilleur que je puisse trouver, mais j'espère que vous pourrez m'aider avec de meilleures suggestions / nouvelles langues. Voici ce que j'ai trouvé:
Puisque c'est maintenant modifiable par wiki, je donne le contrôle à la communauté. Si vous avez une suggestion, veuillez la mettre dans cette section. J'ai décidé d'ajouter également une section pour être un meilleur programmeur et des références en ligne. Encore une fois, toutes les recommandations sont les bienvenues.
Programmation générale
Tutoriels en ligne
Fondements de la programmation Par Karl Seguin - De Codebetter, son C #, mais les idées sonnent vrai dans tous les domaines, je ne peux pas croire que personne n'ait encore posté cela en fait.
Comment écrire du code incontrôlable - Un anti manuel qui vous apprend à écrire du code de la manière la plus incontrôlable possible. Ce serait drôle si beaucoup de ces suggestions ne sonnaient pas si vrai.
La section de programmation de Wiki Books - suggérée par Jim Robert comme ayant une grande quantité de livres / tutoriels sur plusieurs langues à différents stades de réalisation
Juste les bases Pour avoir une idée d'une langue.
Books
Code Complete - Ce livre va sans dire, il est vraiment brillant à bien des égards.
Le programmeur pragmatique - La prochaine meilleure chose à travailler avec un codeur maître, vous apprenant tout ce qu'ils savent.
Maîtriser les expressions régulières - Les expressions régulières sont un outil essentiel dans la boîte à outils de chaque programmeur. Ce livre, recommandé par Patrick Lozzi, est un excellent moyen d'apprendre de quoi ils sont capables.
Algorithmes en C , C ++ et Java - Un excellent moyen d'apprendre tous les algorithmes classiques si vous trouvez les livres de Knuth un peu trop détaillés.
C
Tutoriels en ligne
Ce tutoriel semble assez compliqué et approfondi, a examiné le matériel et semble assez bon. Je ne sais pas à quel point ce serait convivial pour les nouveaux programmeurs.
Livres
K&R C - un classique à coup sûr. On pourrait faire valoir que tous les programmeurs devraient le lire.
C Primer Plus - suggéré par Imran comme étant le livre C ultime pour les programmeurs débutants.
C: Un manuel de référence - Une excellente référence recommandée par Patrick Lozzi.
C ++
Tutoriels en ligne
Le tutoriel sur cplusplus.com semble être le plus complet. J'ai trouvé un autre tutoriel ici mais il n'inclut pas de sujets comme le polymorphisme, qui je pense est essentiel. Si vous venez de C, ce tutoriel pourrait être le meilleur pour vous.
Un autre tutoriel utile, Annotation C ++ . Dans la famille Ubuntu, vous pouvez obtenir l'ebook sur plusieurs formats (pdf, txt, Postscript et LaTex) en installant le c++-annotation
package depuis Synaptic (le package installé se trouve dans /usr/share/doc/c++-annotation/
.
Livres
Le langage de programmation C ++ - crucial pour tout programmeur C ++.
C ++ Primer Plus - Initialement ajouté en tant que faute de frappe, mais les critiques d'Amazon sont si bonnes que je vais le garder ici jusqu'à ce que quelqu'un dise que c'est un raté.
C ++ efficace - Façons d'améliorer vos programmes C ++.
C ++ plus efficace - Poursuite du C ++ efficace.
STL efficace - Façons d'améliorer votre utilisation de la STL.
Penser en C ++ - Grand livre, les deux volumes. Écrit par Bruce Eckel et Chuck Ellison.
Programmation: principes et pratique en utilisant C ++ - Introduction de Stroustrup à C ++.
C ++ accéléré - Andy Koenig et Barbara Moo - Une excellente introduction au C ++ qui ne traite pas le C ++ comme "C avec des bits supplémentaires boulonnés", en fait vous plongez directement et commencez à utiliser STL très tôt.
Forth
Livres
FORTH, un texte et une référence. Mahlon G. Kelly et Nicholas Spies. ISBN 0-13-326349-5 / ISBN 0-13-326331-2. 1986 Prentice-Hall. Les livres de Leo Brodie sont bons mais ce livre est encore meilleur. Par exemple, il couvre la définition des mots et l'interprète en profondeur.
Java
Tutoriels en ligne Tutoriels
Java de Sun - Un tutoriel officiel qui semble approfondi, mais je ne suis pas un expert en Java. Vous en connaissez de meilleurs?
Livres
Head First Java - Recommandé comme un excellent texte d'introduction par Patrick Lozzi.
Java efficace - Recommandé par pek comme un excellent texte intermédiaire.
Core Java Volume 1 et Core Java Volume 2 - Suggérées par FreeMemory comme certaines des meilleures références java disponibles.
Java Concurrence en pratique - Recommandé par MDC comme une excellente ressource pour la programmation simultanée en Java.
Le langage de programmation Java
Python
Tutoriels en ligne
Python.org - La documentation en ligne pour cette langue est assez bonne. Si vous en savez mieux, faites le moi savoir.
Plongez dans Python - Suggéré par Nickola. Semble être un livre python en ligne.
Perl
Tutoriels en ligne
perldoc perl - C'est comme ça que j'ai personnellement commencé avec la langue, et je ne pense pas que vous pourrez la battre.
Livres
Learning Perl - une excellente façon de vous présenter la langue.
Programmation Perl - très connue sous le nom de Perl Bible. Référence essentielle pour tout programmeur Perl sérieux.
Perl Cookbook - Un excellent livre qui a des solutions à de nombreux problèmes courants.
Modern Perl Programming - nouvellement publié, contient les dernières connaissances sur les techniques et outils modernes, y compris Moose et DBIx :: Class.
Rubis
Tutoriels en ligne
Adam Mika a suggéré le guide (poignant) de Why sur Ruby, mais après y avoir jeté un œil, je ne sais pas si c'est pour tout le monde. Trouvé ce site qui semble offrir plusieurs tutoriels pour Ruby on Rails.
Livres
Programmation Ruby - suggéré comme une excellente référence pour tout ce qui concerne ruby.
Visual Basic
Tutoriels en ligne
Trouvé ce site qui semble se consacrer aux tutoriels visuels de base. Je ne sais pas à quel point ils sont bons.
PHP
Tutoriels en ligne
Le site PHP principal - Un tutoriel simple qui permet aux utilisateurs de commenter chaque page, ce que j'aime beaucoup.
Tutoriels PHPFreaks - Divers tutoriels de différentes longueurs de difficulté.
Tutoriels Quakenet / PHP - Tutoriel PHP qui vous guidera de fond en comble .
Javascript
Tutoriels en ligne Vous trouverez ici
un tutoriel décent destiné aux non-programmeurs. J'en ai trouvé un autre plus avancé ici . Nickolay a suggéré une réintroduction au javascript comme une bonne lecture ici.
Books
Head first JavaScript
JavaScript: The Good Parts (avec une vidéo Google Tech Talk de l'auteur)
C #
Tutoriels en ligne Tutoriel
C # Station - Semble être un tutoriel décent que j'ai déterré, mais je ne suis pas un gars C #.
Spécification du langage C # - Suggérée par tamberg. Pas vraiment un tutoriel, mais une grande référence sur tous les éléments de C #
Books
C # au point - suggéré par tamberg comme un court texte qui explique le langage d'une profondeur incroyable
ocaml
Livres
nlucaroni a suggéré ce qui suit:
OCaml pour les scientifiques
Introduction à ocaml en
utilisant Comprendre et démêler ocaml: pratique en théorie et vice versa
Développer des applications en utilisant Ocaml - O'Reilly
The Objective Caml System - Official Manua
Haskell
Tutoriels en ligne
nlucaroni a suggéré ce qui suit:
Explorez la programmation fonctionnelle avec Haskell
Books
Real World Haskell
Total Functional Programming
LISP / Scheme
Books
wfarr a suggéré ce qui suit:
The Little Schemer - Introduction au schéma et à la programmation fonctionnelle en général
The Seasoned Schemer - Suivi de Little Schemer.
Structure et interprétation des programmes informatiques - Le livre définitif sur Lisp (également disponible en ligne ).
Practical Common Lisp - Une bonne introduction à Lisp avec plusieurs exemples d'utilisation pratique.
Sur Lisp - Rubriques avancées en Lisp
Comment concevoir des programmes - Une introduction aux
paradigmes de programmation et de programmation de l'intelligence artificielle: études de cas en Common Lisp - une approche de la programmation Lisp de haute qualité
Et vous? Suis-je totalement hors de certains d'entre eux? Ai-je omis votre langue préférée? Je vais prendre les meilleurs commentaires et modifier la question avec les suggestions.
la source
Ce sont tous très bien, écrits par des universitaires et (certains) sont des livres (un livre oreilly non publié - traduit du français, mais aucun problème que j'ai trouvé), par exemple). J'avais * mes préférés qui m'ont le plus aidé.
ocaml:
Haskell:
la source
Pour C # :
la source
Pour C ++, je suggère Accelerated C ++ par Koenig et Moo comme texte de départ, bien que je ne sache pas comment ce serait pour un novice absolu. Il met l' accent sur l' utilisation de la STL tout de suite, ce qui rend les choses se beaucoup plus facile.
la source
Haskell :
Livre O'Reilly:
Mes tutoriels en ligne généraux et moins académiques préférés:
Livres sur la programmation fonctionnelle avec Haskell:
la source
Un Java efficace est un must mais je recommande d'être à l'aise avec Java d'abord pour bien comprendre les exemples.
la source
Rubis
la source
J'ajouterais les livres de programmation de Bruce Eckel:
En général, sa page "Livres" ( http://mindview.net/Books/ ) est une bonne ressource. Les livres disponibles gratuitement sont également disponibles sur http://www.ibiblio.org/pub/docs/books/eckel/
la source
Je ne peux pas croire que personne n'ait mentionné les meilleures pratiques Perl . Il existe également un flux Twitter qui fournit un PBP par jour.
J'ai appris Perl grâce au didacticiel Perl de Robert , que je recommande, mais il n'a pas été mis à jour depuis 1999. Un didacticiel recommandé plus récent est le didacticiel Perl de Steve .
Pour le développement Web avec Perl, le gagnant est clairement Catalyst et le wiki Catalyst est le point de départ de l'apprentissage.
la source
Pour Lisp et Scheme (l'enfer, la programmation fonctionnelle en général), il y a peu de choses qui fournissent une base plus solide que The Little Schemer et The Seasoned Schemer . Les deux fournissent une introduction très simple et intuitive à la fois au programme et à la programmation fonctionnelle qui se révèle beaucoup plus simple pour les nouveaux étudiants ou les amateurs que n'importe quel volume typique qui déteint comme une interprétation non fictionnelle de War & Peace .
Une fois qu'ils ont dépassé la série Schemer, SICP et On Lisp sont tous deux des choix fantastiques.
la source
consultez la section programmation des wikibooks
Beaucoup d'entre eux sont entièrement formés, et bon nombre d'entre eux ont des sections plus avancées (qui sont dans des états d'achèvement variables) sur des fonctionnalités spécifiques.
aussi, les écoles w3 ont un grand tutoriel php et une section de référence
leurs sections html et css sont également utiles pour référence.
la source
C ++
Le premier est bon pour les débutants et le second nécessite un niveau plus avancé en C ++.
la source
la source
Pour Javascript:
Pour PHP:
Pour la conception et la programmation OO, les modèles:
Pour la refactorisation:
Pour SQL / MySQL:
la source
C Primer Plus, 5th Edition - Le livre C à obtenir si vous apprenez le C sans aucune expérience de programmation préalable. C'est un de mes favoris personnels car j'ai appris à programmer à partir de ce livre. Il possède toutes les qualités qu'un livre convivial pour débutant devrait avoir:
la source
N'oublions pas Head First Java , qui pourrait être considéré comme la première étape essentielle dans ce langage ou peut-être l'étape après les tutoriels en ligne de Sun. C'est génial dans le but de saisir la langue de manière concise, tout en ajoutant un peu de plaisir, en servant de tremplin pour les livres plus approfondis déjà mentionnés.
Sedgewick propose d'excellentes séries sur les algorithmes qui sont indispensables si vous trouvez les livres de Knuth trop approfondis. Mis à part Knuth, Sedgewick apporte une solide approche du domaine et propose ses livres en C , C ++ et Java . Les livres C ++ pourraient être utilisés à l'envers sur C car il ne fait pas une très grande distinction entre les deux langages dans sa présentation.
Chaque fois que je travaille sur C, C: Un manuel de référence, par Harbison et Steele , m'accompagne partout. Il est concis et efficace tout en étant extrêmement approfondi, ce qui le rend inestimable (pour moi en tout cas).
Les langues mises à part, et si ce fil doit devenir une référence pour les références dans lesquelles je pense qu'il se dirige dans cette direction en raison du nombre de contributions solides, veuillez inclure la maîtrise des expressions régulières , pour des raisons dont je pense que la plupart d'entre nous sont conscients .. Certains diraient également que l'expression régulière peut être considérée comme une langue à part entière. De plus, son utilité dans un large éventail de langues le rend inestimable.
la source
Lisp commun
Pour une bonne référence de CL, consultez Common Lisp the Language, 2nd Edition
la source
Pour l'objectif C:
Programmation Cocoa pour Mac OSX - Troisième édition Aaron Hillegass Publié par Addison Wesley
Programmation en objectif C, Stephen G Kochan,
la source
Head First Javascript est une bonne introduction à JS pour les programmeurs débutants - il explique de manière créative les concepts de programmation de base en utilisant la syntaxe JS. La série Head First est basée sur des techniques de recherche pour vous aider à apprendre et à mémoriser de nouvelles informations. Ils vous font faire beaucoup d'exercices et d'énigmes qui peuvent sembler mineurs, mais qui aident vraiment à cimenter les connaissances dans votre cerveau.
Un exercice que j'ai vraiment aimé était après avoir expliqué les types de données, ils montrent une image d'une rue de la ville et disent "étiqueter tous les types de données que vous pouvez trouver sur cette image." Ainsi, le clignotant sur une voiture est un booléen, le signe sur le magasin est une chaîne et l'adresse est un nombre. Cela m'a aidé à avoir une idée de la façon de traduire des informations réelles dans un programme.
En me basant uniquement sur ce livre, je dirais que la série Head First est un excellent moyen d'apprendre quelque chose la première fois , mais le format narratif dont ils disposent les rendrait difficiles à utiliser comme références.
la source
The Ruby Way par Hal Fulton
La couverture de Ruby Way http://rubyhacker.com/trw2cover.gif
la source
Python: http://diveintopython.net/
JS: une réintroduction de JavaScript est l'introduction à la langue (et non aux spécificités du navigateur) pour les programmeurs. Je ne connais pas un bon tutoriel sur JS dans le navigateur.
Excellente idée d'ailleurs!
la source
Compte tenu des développements récents, je pense qu'il est important d'inclure la récente explosion d'offres de cours en ligne gratuits des universités et des entreprises privées. Le nouveau boston est un site de tutoriel que j'ai toujours utilisé pour de nombreuses langues depuis des années, excellent point pour les débutants.
http://www.udacity.com/
https://www.coursera.org/
http://www.coursehero.org/
http://www.codecademy.com/
http://mitx.mit.edu/
http://www.khanacademy.org/
http://thenewboston.org/
la source
J'appuie la recommandation de Kristopher de K&R pour C.
J'ai trouvé le livre "Essential Actionscript 2.0" très utile pour le codage AS (il y a une version AS3 maintenant, je crois).
J'ai trouvé qu'avoir de vrais livres à feuilleter est plus utile qu'une référence en ligne dans certains cas. Je ne sais pas vraiment pourquoi.
la source
hmm, je ne sais pas si je dirais que les documents en ligne sont inutiles, mais je suis d'accord qu'il y a quelque chose à propos des livres. Peut-être qu'ils sont mieux écrits, ou c'est peut-être l'acte de bifurquer plus de 50 $ qui vous rend plus enclin à étudier le matériel.
Quoi qu'il en soit, je suis d'accord que les livres devraient faire partie de cette question. Si quelqu'un a des suggestions de livres pour les langues, je modifierai l'article avec les meilleures suggestions.
la source
La référence que vous avez répertoriée pour Ruby est pour Ruby on Rails. Bien que toujours rubis au fond, ce n'est certainement pas un point de départ pour les personnes qui souhaitent apprendre le rubis.
Pour les tutoriels Ruby, je suggérerais le guide (poignant) de Why sur Ruby comme un excellent point de départ pour toute personne intéressée par la langue.
Si vous souhaitez entrer dans les détails, je recommanderais le livre Programming Ruby , qui est devenu la norme pour tout ce qui concerne Ruby. La troisième édition est en cours d'écriture, mettant en évidence les fonctionnalités de Ruby 1.9, donc je tiendrais un moment si quelqu'un envisage d'acheter ce livre.
la source
Pour J2EE, vous avez un tutoriel très complet sur: http://java.sun.com/javaee/5/docs/tutorial/doc/
la source
Pour Java, je recommande fortement Core Java . C'est un grand tome (ou deux grands tomes), mais je l'ai trouvé comme l'une des meilleures références sur Java que j'ai lues.
la source
Je sais que c'est une publication croisée d' ici ... mais, je pense que l'un des meilleurs livres Java est Java Concurrency in Practice de Brian Goetz. Un livre assez avancé - mais, il portera bien sur votre code concurrent et le développement Java en général.
la source
Le standard de facto pour l'apprentissage des Grails est l'excellent Getting Started with Grails de Jason Rudolph. Vous pouvez débattre s'il s'agit d'un tutoriel en ligne ou d'un livre car il peut être acheté mais est disponible en téléchargement gratuit. Il y a plus de "vrais" livres en cours de publication et je recommande Beginning Groovy and Grails.
la source
C #
C # to the Point par Hanspeter Mössenböck. Sur seulement 200 pages, il explique C # avec une profondeur étonnante, en se concentrant sur les concepts sous-jacents et les exemples concis plutôt que sur les captures d'écran et Visual Studio.
Pour plus d'informations sur les fonctionnalités spécifiques au langage, consultez la spécification du langage C # ECMA-334 .
Framework Design Guidelines , un livre de Krzysztof Cwalina et Brad Abrams de Microsoft, fournit des informations supplémentaires sur les principales décisions de conception derrière la bibliothèque .NET.
la source