Bonjour,
Cela fait quelques-temps que j'aimerais m'essayer à la programmation en C++ (afin de développer des petites applis en Qt) mais je n'ai jamais touché à ce langage pour le moment.
J'ai déjà utilisé des langages tels que: bash (peut-on appeler cela un langage ? :), PHP, Python, etc... Je sais donc ce que sont des variables, des boucles et compagnie mais je n'ai jamais rien développé en utilisant des langages compilés pour le moment.
Sur le site de Trolltech, ils font référence à ce livre http://www.amazon.com/gp/product/0131872494/ref=ase_trolltec(...) qui semble visiblement être traduit en français http://www.amazon.fr/Qt4-C%2B%2B-Programmation-dinterfaces-1(...) mais je ne suis pas sûr que ce livre aborde les bases du C++ en plus de Qt4 (qui doit être un sujet assez vaste pour ne pas en rajouter une couche j'imagine).
On m'a parlé de ce pavé de 1100 pages http://www.amazon.fr/langage-C%2B%2B-%C3%A9dition-revue-corr(...) mais je ne sais pas si un tel ouvrage est adapté aux débutants (en lisant les 2 commentaires d'acheteurs sur Amazon on dirait bien que non).
Bref...
Sachant que j'ai déjà tripoté d'autres langages de programmation (ceux cités plus haut entre autres) que me conseilleriez-vous comme bouquin pour apprendre les bases du C++ avant de pouvoir embrayer sur un bouquin comme celui sur Qt4 ?
Merci d'avance pour vos avis.
# Thinking in C++
Posté par niol (site web personnel) . Évalué à 4.
http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html
(par contre je ne sais pas si ca existe en français)
# La référence
Posté par lmg HS (site web personnel) . Évalué à 3.
La 4e édition du bouquin de de Lippman et Lajoie (C++ Primer) est très bien parail-t-il aussi (je ne l'ai pa lu pour juger celui là par contre). Moo a collaboré à la 4e édition qui n'a pas encore été traduite à ma connaissance.
Le Thinking in C++ est très bien, mais un tout petit peu vieillot par endroits. Il reste 100 fois meilleur à beaucoup d'autres bouquins qui trainent sur le marché.
Le bouquin de Stroustrup est très bien. Mais il s'agit d'un bouquin de référence. Il convient plus difficilement à l'apprentissage -- enfin, cela dépend des personnes.
# The méga-cours de C++
Posté par Obsidian . Évalué à 2.
http://casteyde.christian.free.fr/cpp/cours/index.html
http://casteyde.christian.free.fr/cpp/cours/online/book1.htm(...)
C'est la version 1.40.6, c'est en GFDL et en français, en plus.
La version 2 est disponible sur son site moyennant une participation dérisoire (entre 1 et 3 euros).
Par contre :
Oui.
Il y a des gens qui affirment qu'une personne complètement ab initio peut démarrer directement par le C++. Il y en a beaucoup d'autres qui pensent que si c'est vrai techniquement, c'est très loin d'être une bonne idée. Je fais partie de ceux-là.
Si ton but est de te famillariser avec les langages compilés et générer des binaires (enfin, des exécutables en langage machine), commence plutôt par le C. Tu pourras plus facilement, plus rapidement en faire le tour et maîtriser ses notions. Ensuite, tu pourras t'étendre vers le C++ qui en reprend toutes les fonctionnalités.
Par contre, il faudra te passer du paradigme objet, et apprendre à concevoir tes projets de telle manière qu'il ne soient pas dépendants (au moins dans les concepts généraux) des facilités du langage.
[^] # Re: The méga-cours de C++
Posté par lmg HS (site web personnel) . Évalué à 1.
Sinon, je fais parti de ceux qui considère que le C est trop bas niveau dans un premier temps. Le C++ permet de mettre l'accent sur des notions plus importantes que les formats de printf et les pointeurs au second chapitre. Le tout est de retarder ces choses du C jusqu'au moment opportun.
(je conseille le C++ avant le C pour les mêmes raisons que je conseillerai d'autres langages comme le Pascal ou l'Ada avant)
Sujet débatu et archi-débatu
http://developpez.net/forums/showthread.php?t=327
http://developpez.net/forums/showthread.php?t=1489
(entre autres)
[^] # Re: The méga-cours de C++
Posté par Obsidian . Évalué à 2.
L'idée est précisément de voir les langages dans l'ordre de leur apparition car chaque génération s'appuie sur la précédente et les modifications apportées servent justement à lever ses limitations. Commencer par du haut niveau, c'est valable quand on débute complètement. Ce n'est plus tout-à-fait le cas ici.
Le langage C n'est pas « un mauvais moment qu'il faudra passer », encore heureux. Si un programmeur a ce genre de considération, c'est qu'il ne maîtrise pas ce qu'il fait, ni la manière dont sa machine fonctionne.
Le C++ est la voie royale en ce sens, parce que le langage privilégie l'exhaustivité à la simplicité et c'est pour ça que je l'apprécie, outre le fait qu'il soit conçu pour écrire des binaires. Par contre, faire du C++ light, je trouve que pour le coup, c'est vraiment idiot. C'est un coup à perdre le débutant pour de bon sans lui faire profiter des bases.
[^] # Re: The méga-cours de C++
Posté par lmg HS (site web personnel) . Évalué à 1.
Et pourquoi on ne voit pas le B avant alors ? Et quantité d'autres choses d'ailleurs ? http://lambda-the-ultimate.org/node/7
Passer au C comme premier langage compilé peut rebuter plus d'une personne.
Je n'ai pas dit ça (ni ici, ni dans les liens que j'avais donnés!). J'ai dit que des aspects primordiaux du C se tapaient l'inscruste trop tôt dans l'apprentissage et le parasitaient. L'apprentissage (non historique) du C++ permet de voir ces aspects une fois que les bases sont consolidées.
Nul besoin de montrer trop de choses d'un coup, dont des mauvaises habitudes qu'il est toujours dur de perdre.
NB: je n'ai jamais dit qu'il fallait commencer par l'OO. Je n'ai jamais dit qu'il ne faut pas voir les pointeurs. Je dit juste qu'il faut voir les choses dans l'ordre qui permet leur meilleure assimilation.
Je renvois au passage à l'article de Stroustrup dans sa FAQ (sur le pourquoi le C++ doit être enseigné comme un langage à part entière). A méditer.
[^] # Re: The méga-cours de C++
Posté par GCN (site web personnel) . Évalué à 5.
L'imprimante est actuellement en train de tourner (parce que rien ne vaudra jamais un support papier pour ce genre de choses :).
Je vais déjà voir si ça me convient et, si tel n'est pas le cas, je n'aurais pas beaucoup de regrets vu le prix payé.
Je garde les autres messages sous le coude, ça peut m'être utile pour la suite.
Merci à tous pour avoir pris de votre temps pour me répondre.
[^] # Re: The méga-cours de C++
Posté par Obsidian . Évalué à 2.
# Bosser le modèle php en premier...
Posté par Raphaël G. (site web personnel) . Évalué à 1.
Au moins pour maîtriser les principes suivant :
- interface
- factory
- singleton
- visibilité (private, public, protected)
- héritage (il n'existe que le simple en php)
- conception objet
- faire un peu de gtk/qt avec pour comprendre comment marche la conception d'ui avec.
# un peu HS...
Posté par dood . Évalué à 2.
un petit tutoriel qui m'a bien aidé pour commencer : http://dosimple.ch/articles/Python-PyQt/
Guilhelm
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.