Des questions importantes à se poser avant d'acheter un livre:
- Est-ce qu'il est à jour?
N'oublier pas que le C++ a été
standardisé il y a quelques années. Cependant tel n'était pas le cas des
compilateurs ainsi que certains ouvrages! Il est important de connaître les
règles du standard C++ afin d'éviter de refaire le travail de compilation à
chaque fois que le compilateur change de version ou que vous changiez de
plate-forme (de unix à windows par exemple).
- Est-ce qu'il couvre toute la matière du cours?
Important si
votre budget est limité.
- Est-ce qu'il pousse la chose plus loin et couvre aussi d'autres
sujets plus poussés?
Qu'est ce que vous voulez faire avec langage/livre par
la suite? Faire du développement de base, d'un niveau élevé où vous allez
chercher dans les détails de la spécification etc.?
Cette page sera remise à jour prochainement ou du moins dès que
j'aurais en main les nouvelles versions de certains livres mentionnés ci-dessus.
Il existe de (trop?) nombreux ouvrages décrivant C++, chacun avec
ses qualités et ses défauts. Cette session, le cours se base sur le livre de
"Programmer en langage C++" de Claude Delannoy.
C++ est largement documenté sur internet (voir la section des liens utiles). Vous pouvez en particulier y
trouver des cours interactifs, des tutoriaux, ainsi que des versions
"anciennes" de certains ouvrages.
Je vous donne ici une liste d'ouvrages que je commente
brièvement. Certains de ces livres sont recommandés mais non
obligatoires.
Le livre de Claude Delannoy est un bon ouvrage de référence.
La plus part de ces livres sont disponibles en réserve dans le dossier
IFT1166 se trouvant au niveau de la bibliothèque de Mathématiques et Informatique.
Programmer en langage C++., Claude Delannoy,
Page
web du livre
Un ouvrage en français de très bonne facture, qui couvre la totalité du
cours. L'auteur suppose du lecteur une certaine pratique du langage C ou de
Java. C'est le livre de référence pour ce cours.
Exercices en langage C+++., Claude Delannoy,
Page
web du livre
Je connais que la première version que je trouve un peu trop légère!
Le livre théorique est tellement bien fait que j'ai trouvé qu'il manquait dans
cet ouvrage des exercices plus poussés. Je reviendrai dessus dès que j'aurai en
main la seconde version du livre.
La famille O'Reilly,
Page web de la série complète
Dans cette collection deux livres en rapport avec le C++ ont été
publiés récemment. C++ in a
Nutshell C'est une référence "rapide" au langage C++. Une autre référence
encore plus rapide (c'est un livret), C++ Pocket
Reference. Ces livres sont très utiles pour une recherche rapide d'une
information donnée en rapport avec le langage C++. Il faut juste avoir quelques
points de repère pour entamer cette recherche et justement le but de ce
cours est de vous donner plus que des points de repère. Donc il faut juste
avoir une idée de départ comment chercher! Pour un contenu plus développé, je
pense plutôt Practical C++
Programming même si c'est du C++ à la C. La 2nde édition est plus récente
(2002) que C++: The Core
Language (1995). Donc ne compter pas trouver les STL dans cet ouvrage.
Par ailleurs, Il ne suffit pas d'écrire un code, il faut savoir aussi
comment l'écrire de
manière propre et sans faille, sait-on jamais qu'il va se retrouver
demain interrogé à distance par réseau. Il ne faudra pas qu'il soit une
passoire aux craqueurs de code! Si vous cherchez comment développer un code
sans vulnérabilité en C/C++, un ouvrage dans la même collection vient de
paraître (en juillet 2003) Secure Programming Cookbook for C and C++.
Comment programmer en C++, Deitel &
Deitel, Quatrième édition, Les éditions Reynald Goulet Inc
Page web du
livre version en anglais
Page web du livre version en français
Dans la saga de la famille Deitel, cet ouvrage est un bon ouvrage de
référence. J'ai la version traduite d'il y a un certain temps, donc je ne
pourrai rien dire sur la v4 version française. Je vais me contenter de
commenter que la version anglaise. Il couvre de nombreux aspects du C++. Il
suppose que vous avez le niveau 0 en programmation! Il revient sur des notions
déjà apprises dans un cours de programmation de niveau I (IFT18xx) ou II
(IFT116xx) mais vu sous l'angle C++. Dans un sens c'est bien, vous allez
apprendre le C++ proprement dit sans faire référence aux autres langages. Ceci
écrit, il faut signaler quand même que dans ce cours nous n'allons pas nous
attarder sur une boucle for ou while, pour ne citer que ces deux exemples. La
raison est toute simple, vous avez déjà suivi un cours de programmation de
niveau I (IFT18xx/10-70) et II
(IFT116x/0-9) en C/Java. Attendez-vous donc à de la redondance. Par rapport au
cours, il y a toute la matière, c'est l'ordre qui n'est pas le même ... et la
redondance! Ils ont décidé d'introduire dans cette 4e version la programmation
web avec des CGI!!! Quelle idée!!! Ils ont même placé ce chapitre avant celui
des STL qui est une pièce essentielle du C++ aujourd'hui. Même chose pour
l'héritage multiple qui a été introduit à la fin du livre en page 1201 dans la
rubrique "other topics"! Bref, Si les 1300 pages en couleur vous amusent ...
The C++ Programming Language (Special Edition).,
Bjarne Stroustrup, Addison-Wesley
Page
web du livre
Livre écrit par le concepteur du langage C++. C'est un livre très
technique couvrant tous les aspects du C++. Il suppose que vous avez déjà une
idée sur ce que c'est le C++. Il revient en détail sur le standard choisi,
sur des points chauds en programmation, et les questions de design. C'est un
livre qui convient pour le long terme à un développeur par exemple.
À éviter: les ouvrages avec des titres
tels que: C++ en 25 leçons, C++ for dummies, etc.
(PL)
À vous la parole! Vous pouvez donner vôtre avis sur ces
livres et d'autres ...
|