IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Livre débutant pour apprendre à utiliser pleinement le language c++


Sujet :

C++

  1. #1
    Provisoirement toléré
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2016
    Messages : 120
    Points : 0
    Points
    0
    Par défaut Livre débutant pour apprendre à utiliser pleinement le language c++
    Bonjour,

    je cherche un livre débutant pour apprendre à utiliser c++ pleinement, c'est à dire qu'il m'apprenne tout ce qu'il est théoriquement possible de faire avec ce language, qu'il soit en anglais ou français, français de préférence, qu'avez-vous à me proposer ?

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 858
    Points : 218 575
    Points
    218 575
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Avez-vous fait un tour sur la page livres de la rubrique C++ ?
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    "débutant" et "pleinement" sont assez antynomiques.

    Pour un bon aperçu de tout ce qui est fourni par le langage ou sa bibliothèque standard, il y a les sites de référence du langage.
    Par exemple, j'utilise cppreference.com.
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  4. #4
    Provisoirement toléré
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2016
    Messages : 120
    Points : 0
    Points
    0
    Par défaut
    Oui j'ai au préalable jeté un oeil sur la page libre de la rubrique c++, le prix des livres ne m'autorise pas à l'erreur sur mon choix, je veux être sûr que le livre que je vais acheter contienne tout ce que j'attends qu'il contienne. Ce site, cppreference.com, serait-il possible d'apprendre toutes les possibilités de c++ uniquement avec les informations qu'il contient ? Je pense que ma demande à été assez claire, j'aimerais quand même un rien plus préciser ma demande, quand je parle de tout ce qui est théoriquement possible de faire avec ce langage je ne parle pas des programmes possibles mais bien évidement de toutes les "commandes" possibles exemple string; ou if(){}, et bibliothèques tels que <iostream> ou <ifstream>, ce n'est pas un livre qui m'apprend à programmer une calculatrice phase par phase que j'attends, mais un qui m'apprendrait l'entièreté du vocabulaire utilisable en c++ et sa syntaxe.

  5. #5
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    Le vocabulaire et la grammaire sont sur cppreference.
    Par contre, tu n'auras pas l'essentiel: le style.

    Avec le vocabulaire, tu sauras faire des phrases.
    Avec les bons livres, la pratique, ou encore en lisant notre forum (c'est cette méthode qui m'a réussit), tu apprendras à écrire du code qui soit à la fois correct, lisible (et donc maintenable), et efficace.

    Quelques mots clés pour tes recherches:
    • RAII
    • SOLID
    • const-correctness
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  6. #6
    Membre confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2015
    Messages
    294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 294
    Points : 558
    Points
    558
    Par défaut
    Cours de C/C++ par Christian Casteyde

    Pour les nouveautés du c++ 11 il faut voir ailleurs.
    en outre moi j'ai appris d'abord le C avant le C++, et ca m'a quand meme permis de bien comprendre la gestion de la memoire et les pointeurs....

  7. #7
    Membre chevronné Avatar de Ehonn
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    788
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 788
    Points : 2 160
    Points
    2 160
    Par défaut
    Citation Envoyé par stephane78l Voir le message
    Si on cherche un cours en C++, celui là est à jeter, en vrac, après 1 minute de "lecture diagonale" :
    - Les fonctions d'entrée / sortie de base utilise printf, scanf et ne parlent pas de iostream- Les pointeurs sont présentés [avant les références]
    - Le constructeurs est vu après l'héritage
    - Les exceptions sont vu avant l'objet
    - Les char * sont vus avant std::string et malloc avant std::vector<T>

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Ehonn Voir le message
    Si on cherche un cours en C++, celui là est à jeter, en vrac, après 1 minute de "lecture diagonale"
    Tout à fait d'accord. De même, apprendre le C avant le C++ pouvait se justifier dans les années 90 mais aujourd'hui ça ne me parait pas une bonne idée.

    Sinon, en complément des sites de référence, il y a le "tour" https://isocpp.org/tour.

  9. #9
    Provisoirement toléré
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2016
    Messages : 120
    Points : 0
    Points
    0
    Par défaut
    Merci pour les sites, seulement j'aimerais apprendre avec un livre, je trouve cela plus plaisant, donc ce serait un livre qui reprendrait la globalité du vocabulaire et de la grammaire c++ et si possible relatant des exemples.

    Cette question fera peut-être tout basculer, est-il possible avec le langage c de faire absolument tout ce que l'on peut faire avec le c++, dans ce cas je me tournerai vers un livre c car ce que je cherche avant tout est le langage le plus bas niveau avec le maximum de potentialités.

  10. #10
    Invité
    Invité(e)
    Par défaut
    Le "tour" est un livre. Maintenant si tu es prêt à lire 1400 pages en anglais il y a le livre de l'auteur originel du C++ : http://www.amazon.com/The-Programmin...dp/0321563840/ .

    Citation Envoyé par Factorisable Voir le message
    ce que je cherche avant tout est le langage le plus bas niveau avec le maximum de potentialités.
    Qu'appelle-tu "potentialités" ? Théoriquement tous les langages turing-complet ont les mêmes "potentialités" mais les langages de haut niveau sont plus expressifs (pour faire une tâche donnée, ils demanderont moins de code).

    Ceci dit, j'ai l'impression que le C correspond effectivement plus à ce que tu cherches : http://www.amazon.com/The-Programmin.../dp/0131103628

  11. #11
    Membre régulier
    Homme Profil pro
    Cocher moderne
    Inscrit en
    Septembre 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Oman

    Informations professionnelles :
    Activité : Cocher moderne

    Informations forums :
    Inscription : Septembre 2006
    Messages : 50
    Points : 118
    Points
    118
    Par défaut
    Bonjour,

    J'ai vraiment apprécié (et j'apprécie toujours) "La Bible du C++" - titre original en anglais "Big C++". Préférer la seconde édition, pour avoir un aperçu des fonctionnalités C++11.

    Sinon, bien sûr, les livres de Stroustrup sont très bien. L'encyclopédie, difficilement accessible aux débutants est "The C++ Programming Language" - en français "Le Langage C++" - prendre la 4ème édition pour le C++11,
    ou encore "Programmation: principes et pratiques avec C++", plus accessible mais dont la progression (ie la pédagogie) est assez particulière, à mon avis.

  12. #12
    Provisoirement toléré
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2016
    Messages : 120
    Points : 0
    Points
    0
    Par défaut
    Pouvez-vous confirmer ceci, le langage c est un langage de plus bas niveau que c++, toutes les possibilités de c++ existent avec c (ici je parle des programmes possibles, absolument tous j'insiste). Dans ce cas, un plus grand nombre pourrait-ils venir confirmer que le livre "The C Programming Language 2nd Edition" dans le lien proposé contient tout le vocabulaire et la grammaire du langage c et qu'il est accessible aux débutants, autrement avez-vous un autre livre à me conseiller remplissant ces points ?

  13. #13
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 965
    Points
    32 965
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par Factorisable Voir le message
    le langage c est un langage de plus bas niveau que c++
    Non

    Citation Envoyé par Factorisable Voir le message
    , toutes les possibilités de c++ existent avec c (ici je parle des programmes possibles, absolument tous j'insiste).
    Tous les langages sont compilés en assembleur puis en binaire. Mets-toi directement au binaire alors ?

    Ta demande est ridicule, il n'y a aucun ouvrage destiné aux débutants qui te présentera tout le langage. Il n'y a aucun bouquin qui présentera tout le langage tout court. Il faudrait des milliers de pages, parce que c'est trop vaste - mais tu t'en rendrais compte si tu commençais à appréhender la chose -, et parce qu'un débutant comme son nom l'indique n'y connait rien. On va pas lui présenter du SFINAE, template ou je ne sais quoi qui ne ferait que l'encombrer et le perdre. On ne va pas lui présenter qT, DirectX, OpenGL et l'API Socket.

    Soit tu prends un bouquin pour débutant, qui t'apprend le nécessaire pour débuter, les mot-clés, héritage, std, ... qui est déjà assez conséquent.
    Soit tu prends un bouquin spécialisé pour approfondir des points, quand tu maitrises déjà suffisament le reste pour savoir ce que tu recherches et savoir l'exprimer. Et là, Google est la seule source un tant soit peu complète, tant que tu n'entres pas dans des milieux trop obscurs.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  14. #14
    Provisoirement toléré
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2016
    Messages : 120
    Points : 0
    Points
    0
    Par défaut
    Le langage c n'est pas de plus bas niveau que c++, il m'a semblait que le contraire avait été sous entendu plus haut. Qui a raison ? Etant donné qu'il n'existe aucun ouvrage qui me présentera l'entièreté du vocabulaire et de la grammaire c ou c++, quel livre me conseilleriez-vous pour débuter et apprendre le maximum sur le langage, entre les deux cités, celui de plus bas niveau, plus proche du langage machine ? J'en profite, comme tu es modérateur, pour te demander comment changer le mot de passe de son compte sur ce forum ?

  15. #15
    Invité
    Invité(e)
    Par défaut
    Le C++ permet d'écrire du code aussi bas niveau que le C donc ils sont "aussi bas niveau" l'un que l'autre mais le C++ permet également du code plus haut niveau (et c'est souvent ainsi qu'on l'utilise et ce qui en fait un langage peu "débutant-friendly").

    Maintenant je suis d'accord avec Bousk : tu commences à être lourd à poser 42 fois les mêmes questions et avec des choix arrêtés qui semblent franchement à côté de la plaque. Bref, au lieu de perdre ton temps (et le notre) à poster sur une section du forum qui n'a pas grand chose à voir avec ton problème, tu ferais mieux de consulter les pages sur les livres de programmation ou de poster dans la section "debuter".

    http://programmation.developpez.com/livres/
    http://c.developpez.com/livres/
    http://www.developpez.net/forums/f83...ation/debuter/

  16. #16
    Provisoirement toléré
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2016
    Messages : 120
    Points : 0
    Points
    0
    Par défaut
    Je me suis documenté, en fin de compte je me tourne vers le langage c, http://www.amazon.com/The-Programmin.../dp/0131103628, ce livre proposé me conviendrait-il suivant mes attentes discutées dernièrement ?

  17. #17
    Membre habitué
    Homme Profil pro
    sans activité
    Inscrit en
    Janvier 2016
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : sans activité

    Informations forums :
    Inscription : Janvier 2016
    Messages : 76
    Points : 136
    Points
    136
    Par défaut
    Je ne connais pas ce livre mais le problème vient réellement de tes attentes car aucun livre n'y répond et ça beaucoup de gents te l'ont expliqué ici.
    De plus, se baser uniquement sur un seul livre est pour moi une erreur. Je te conseillerai plutôt de multiplier les sources ne serai-ce que pour trouver un auteur qui écrit dans un style qui te convient.

    Dans ton profil tu dis être étudiant, n'y aurait-il pas une bibliothèque dans ton université?

    Ne t'attends pas en tant que débutant à lire un livre et devenir expert. En général le premier programme que l'on apprend est un "Hello world!", ce n'est pas pour rien. L’expérience est de loin la meilleur façon d'enrichir ses connaissances.

    Pour la plupart d'entre nous, notre langue maternelle est le français pourtant il nous a fallu à tous plusieurs années pour l'apprendre et qui peu ici prétendre réellement la maitriser. Je pense qu'il en va de même pour les langages de programmation. Je ne conseillerai jamais à une personne voulant apprendre le français de lire et d'apprendre le dictionnaire et pourtant nos dico sont loin d'être complet. En général, une vrai encyclopédie prend beaucoup de place et je ne suis pas sûr que lire entièrement une encyclopédie est un quelconque intérêt.

    C'est pourquoi, je pense que nous avons tous dans nos favoris un site de référence du langage et si pour certains aujourd'hui cela n'est plus indispensable c'est parce qu’ils ont acquis une expérience irremplaçable.

    Tu veux te mettre au C ou au C++ très bien, soit. Tu feras comme tous le monde, tu commenceras petit et au fil du temps (des années) tu finiras par savoir de quoi tu parles.

    Commence avec un livre pour débutant, il y aura largement de quoi faire. De plus, il y a des concepts utiles que tu ne trouveras pas dans des livres propres à un langage, je pense par exemple à la complexité algorithmique qui n’était pas dans les livres que j'ai lu.

  18. #18
    Provisoirement toléré
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2016
    Messages : 120
    Points : 0
    Points
    0
    Par défaut
    Dans ce cas je suis forcé de mettre mes attentes de coté, ce livre, le K&R m'a été proposé sur un autre forum mais en français, je vais donc choisir ce livre. Dernière chose, anglais ou français ?

  19. #19
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    Anglais, sauf si tu as de gros soucis avec.
    Les termes techniques sont en anglais, tout comme les documentations officielles du langage et de (quasiment) toutes les bibliothèque.
    Avec un effet bonus pour ton CV.
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  20. #20
    Provisoirement toléré
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mars 2016
    Messages : 120
    Points : 0
    Points
    0
    Par défaut
    Merci pour toutes vos réponses, je vais au final choisir le K&R version anglaise.

Discussions similaires

  1. [CMMi] livres recommandés pour apprendre CMMI
    Par loicmidy dans le forum Qualité
    Réponses: 4
    Dernier message: 19/10/2015, 08h57
  2. [OpenMP] Introduction to OpenMP : une série de vidéos (en anglais) pour apprendre à utiliser l'API de calcul parallèle
    Par Jerome Briot dans le forum Programmation parallèle, calcul scientifique et de haute performance (HPC)
    Réponses: 4
    Dernier message: 03/02/2014, 22h04
  3. Réponses: 6
    Dernier message: 03/04/2010, 20h27
  4. tutoriel pour apprendre à utiliser jquery, ajax. . .
    Par benja507 dans le forum jQuery
    Réponses: 1
    Dernier message: 17/10/2008, 17h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo