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 :

Cours C++ 17


Sujet :

C++

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 12
    Points : 11
    Points
    11
    Par défaut Cours C++ 17
    Bonjour je souhaite apprendre le C++, j'ai donc commencer mes recherches de cours. J'ai donc vue qu'il fallait chercher des cours récent car le C++ évolue vite. Malheureusement je n'est pas trouver de cours de C++ qui fesait l’unanimité. Je souhaiterai donc savoir si vous pouviez me conseiller un cours de C++ 17.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 630
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 630
    Points : 10 556
    Points
    10 556
    Par défaut
    De mon point de vue il n'y a en a pas

    Pour le C++ moderne (C++11, C++14), tu as des livres qui traitent des spécificités comme le livre "Programmer efficacement en C++".
    Mais un cours complet, cela n'existe pas.

    Pour le C++ moderne, il faut avoir d'énormes connaissances et expérience en C++03 (métaprogrammation, conception, objet, ...) et ensuite rajouter par dessus les couches du C++ moderne (livres, cours, tutoriels, spécifications, ...)
    Et je ne parle pas de la connaissance du C , qui est la base de C++ et qui mine de rien le C++ moderne essaye de larguer en se Javaifiant

  3. #3
    Membre expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2011
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Juin 2011
    Messages : 739
    Points : 3 627
    Points
    3 627
    Par défaut
    Il y le livre C++ Primer de Lippman dans sa dernière édition (5, en anglais) qui se veut un court assez complet et qui aborde C++11.

    Le passage de C++11 à 14 se fait très facilement (peu d'ajout et "correction" de quelques défauts). Le C++17, bien que plus chargé, n'offre pas de réel intérêt dans un début d'apprentissage.

    Citation Envoyé par foetus Voir le message
    Pour le C++ moderne, il faut avoir d'énormes connaissances et expérience en C++03 (métaprogrammation, conception, objet, ...) et ensuite rajouter par dessus les couches du C++ moderne (livres, cours, tutoriels, spécifications, ...)
    Je ne suis pas du tout d'accord, le C++ dit moderne se fait essentiellement une rupture dans la manière d'écrire du code: utiliser une syntaxe ou des classes qui donne plus de garanties. Par exemple, supprimer les allocations/désallocations manuelles en les remplaçant par des objets qui s'occupent de cela. Le C++03 n'a pas la notion de rvalue, c'est donc une manière de penser très différente de C++11 et c'est stupide de vouloir commencer par là. Surtout que C++11 offre plus de facilité que C++03 (for-range, auto, lambda, pointeur intelligent).

    Citation Envoyé par foetus Voir le message
    Et je ne parle pas de la connaissance du C , qui est la base de C++ et qui mine de rien le C++ moderne essaye de larguer en se Javaifiant
    Apprendre le C pour faire du C++ est un bon moyen de flinguer son apprentissage. Les 2 n'ont strictement rien à voir et le C est bien plus difficile à apprendre que le C++.

    En quoi C++ se javaise ?

  4. #4
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Personnellement, j'ai beaucoup appris de C++17 grâce https://www.bfilipek.com/p/cpp17.html

    Ce dépôt GitHub est intéressant aussi : https://github.com/tvaneerd/cpp17_in_TTs

  5. #5
    Membre éprouvé
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Mai 2016
    Messages
    313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2016
    Messages : 313
    Points : 1 237
    Points
    1 237
    Par défaut
    Citation Envoyé par zraulix Voir le message
    Bonjour je souhaite apprendre le C++, j'ai donc commencer mes recherches de cours. J'ai donc vue qu'il fallait chercher des cours récent car le C++ évolue vite. Malheureusement je n'est pas trouver de cours de C++ qui fesait l’unanimité. Je souhaiterai donc savoir si vous pouviez me conseiller un cours de C++ 17.
    Voir sur le site de Stroustrup :
    http://www.stroustrup.com/papers.html
    Les bouquins sont C++ 11, mais c'est l'essentiel, quand tu auras déjà assimilé tout ça, il ne faut pas grand chose pour passer à 17 plus tard.
    J'ai "The C++ Programming language (4th edition)".
    Attention : c'est bien un bouquin sur le langage, pas sur l'apprentissage des bases de la programmation en général.

    EDIT: je viens de voir que "A tour of C++ (second edition)", couvre C++ 17.

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 630
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 630
    Points : 10 556
    Points
    10 556
    Par défaut
    Citation Envoyé par jo_link_noir Voir le message
    Je ne suis pas du tout d'accord, le C++ dit moderne se fait essentiellement une rupture dans la manière d'écrire du code: utiliser une syntaxe ou des classes qui donne plus de garanties. Par exemple, supprimer les allocations/désallocations manuelles en les remplaçant par des objets qui s'occupent de cela. Le C++03 n'a pas la notion de rvalue, c'est donc une manière de penser très différente de C++11 et c'est stupide de vouloir commencer par là. Surtout que C++11 offre plus de facilité que C++03 (for-range, auto, lambda, pointeur intelligent).
    ....
    Apprendre le C pour faire du C++ est un bon moyen de flinguer son apprentissage. Les 2 n'ont strictement rien à voir et le C est bien plus difficile à apprendre que le C++.
    Je connais ton point de vue on peut partir de zéro.
    Effectivement, certains "détails" du C++03 n'existe plus (comme le RVO)

    Mais le C++03 corrige des "défauts"/ "désagréments", et je pense que c'est mieux d'apprendre ce "défaut" et le correctif, au lieu que seulement le correctif. Par exemple, NULL vs nullptr ou les default constructors


    Citation Envoyé par jo_link_noir Voir le message
    En quoi C++ se javaise ?
    *) La bibliothèque standard grossit : threads, réseau, table de hachage, ... et tous les emprunts à Boost
    *) On utilise des classes pour tout faire : allocations, nullptr, passage de paramètres fonction, ...

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 12
    Points : 11
    Points
    11
    Par défaut
    Je vous remercie pour toute vos réponse.
    Donc si j'ai bien compris cela ne sert à rien de s'orienter vers un cours de c++ 17 specifiquement un cours de c++ 14 ou 11 suffisant.

    merci

  8. #8
    Expert éminent sénior

    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Avril 2002
    Messages
    2 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 793
    Points : 18 951
    Points
    18 951
    Par défaut
    Pour bien apprendre le C++ moderne lire les livres de Scott Meyers, Bjarne Stroustrup, Peter Gottschling, Andrei Alexandrescu...

    Tu sais déjà programmer ?
    Ne prenez pas la vie au sérieux, vous n'en sortirez pas vivant ...

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 12
    Points : 11
    Points
    11
    Par défaut
    Sa dépand se que vous appellez savoir programmer.
    J'ai les bases du java et du python je pense.

  10. #10
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 614
    Points : 30 626
    Points
    30 626
    Par défaut
    Citation Envoyé par foetus Voir le message
    Mais le C++03 corrige des "défauts"/ "désagréments", et je pense que c'est mieux d'apprendre ce "défaut" et le correctif, au lieu que seulement le correctif. Par exemple, NULL vs nullptr ou les default constructors
    Je ne suis pas d'accord avec toi: les habitudes les plus intéressantes à prendre pour un débutant sont celles qui lui permettront d'utiliser la version actuelle du langage, pour une raison toute simple : c'est ce qu'il va utiliser en priorité, qu'il se forme pour devenir professionnel ou simple dilettante.

    Car, toutes les habitudes prises sont difficiles à perdre, et qu'il est donc beaucoup plus facile de veiller à ce que seules les "bonnes habitudes" soient prises que d'essayer d'en faire abandonner des "mauvaises".

    Je ne veux pas dire qu'il faille complètement occulter les manières de faire "d'antan". Je veux dire qu'il est préférable de n'en parler qu'une fois que les "bonnes habitudes" seront prises.

    Car, si on ne peut effectivement pas ignorer qu'un développeur "récemment formé" risque d'être confronté à du code (très) ancien, cela ne représente -- malgré tout -- qu'un "risque mineur" : il a en effet beaucoup plus de chances d'être confronté à du code récent, ce qui implique qu'il devra avoir recours aux techniques récentes, en appliquant les bonnes habitudes qui y sont associées.

    Nous -- "les vieux de la vieille" -- avons dû nous rendre compte "de nous même" que la plupart des habitudes que nous avions prises -- par exemple, issues du C -- étaient mauvaises voire carrément nocive. Et nous avons sué pour arriver à nous en défaire au profit d'habitudes qu'il a fallu "mettre au point" et qui sont désormais considérées comme "bonnes".

    Pourquoi voudrait-on que les débutants, qui ont la chance de pouvoir apprendre directement les "bonnes" habitudes soient confrontés au même problème Par esprit de revanche N'est-ce pas rien qu'un frein à l'évolution de la qualité des applications à développer

    Notre rôle n'est-il pas -- justement -- de faire profiter ces débutants de notre expérience, de manière à rendre leur propre apprentissage et leur propre travail plus facile et de meilleure qualité
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Expert sécurité informatique
    Inscrit en
    Décembre 2020
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert sécurité informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2020
    Messages : 21
    Points : 9
    Points
    9

Discussions similaires

  1. Les meilleurs cours et tutoriels C++
    Par Community Management dans le forum C++
    Réponses: 1
    Dernier message: 13/05/2015, 13h50
  2. Outils, cours et NOUVEAUX tutoriels pour Borland C++Builder
    Par hiko-seijuro dans le forum C++Builder
    Réponses: 10
    Dernier message: 12/03/2006, 22h33
  3. recherches des cours ou des explications sur les algorithmes
    Par Marcus2211 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 19/05/2002, 22h18
  4. Cours, tutoriels, logiciels, F.A.Q,... pour le langage SQL
    Par Marc Lussac dans le forum Langage SQL
    Réponses: 0
    Dernier message: 04/04/2002, 10h21
  5. F.A.Q, Doc, cours, tutoriels sur JBuilder
    Par Ricky81 dans le forum JBuilder
    Réponses: 0
    Dernier message: 14/03/2002, 15h28

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