Partage
  • Partager sur Facebook
  • Partager sur Twitter

Nouveau cours C++ "moderne"

    28 mai 2014 à 20:10:41

    @jo_link_noir

    Mode brutasse : j'ai commenté le code qui utilise is_writable dans le fichier php et plus d'erreur, le pdf est généré correctement :)

    • Partager sur Facebook
    • Partager sur Twitter
    Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
      28 mai 2014 à 20:53:42

      jo_link_noir a écrit:

      Pour les epub je ne sais pas mais le rm en fin est étrange, non ?


      Je viens de vérifier, c'est une option dans le panel admin, pour nettoyer les fichiers intermédiaires. Cela ne fonctionnait pas, les répertoires ne sont pas nettoyés. Et j'ai désactivé, cela ne change rien
      • Partager sur Facebook
      • Partager sur Twitter
      Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
        28 mai 2014 à 21:49:48

        Si je prends les fichiers sur le serveur, j'arrive à créer manuellement le epub (http://guillaume.belz.free.fr/Livre%20C++.epub, faudra que je bosse sur le css, c'est bien moche :) ), mais le epub généré automatiquement ne contient qu'un fichier mimetype.
        • Partager sur Facebook
        • Partager sur Twitter
        Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
          30 mai 2014 à 21:39:52

          Mon avis n'est que purement subjectif mais il me semble qu'il serrait plus efficace d'apprendre des choses plus simples pour commencer.

          -
          Edité par ggrémi 30 mai 2014 à 21:49:19

          • Partager sur Facebook
          • Partager sur Twitter
            30 mai 2014 à 21:45:09

            C'est à dire ?

            Plus simple que ce que je présente dans le cours ? Plus simple d'apprendre le C++03 que le C++11/14 ? Plus simple que le C++ ?

            • Partager sur Facebook
            • Partager sur Twitter
            Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
              30 mai 2014 à 21:50:31

              Je voulais dire des exercices guidés avant d'en arriver a ce point.
              • Partager sur Facebook
              • Partager sur Twitter
                30 mai 2014 à 21:52:24

                Personnellement, plus simple que le c++ pour moi il n'y a qu'algobox ! :lol:

                Java -> Nécessite une certaine connaissance "haut niveau"

                C -> Bas niveau, difficile à maîtriser à cause des pointeurs nus

                Python -> J'ai entendu dire que c'était simple, mais je trouve les codes difficilement lisible, et j'ai l'impression que c'est haut niveau aussi ...

                Le C++ permet de faire les 2, les fonctions de bases de la bibliothèque standard sont plutôt simples à prendre en main (encore plus avec C++11)

                Bon je n'ai cité que les plus connus mais voilà !

                ggrémi a écrit:

                Mon avis n'est que purement objectif


                Subjectif ! Dieu (s'il existe ?) pourrait être objectif, mais quand on donne son avis on est subjectif ! :lol:
                • Partager sur Facebook
                • Partager sur Twitter
                Tous les crétois sont menteurs. Je suis génial. | Nouveau Sdz ? | Entrainement à l'algorithmique | Mon Devblog | Cpp Reference | Livres Recommandés : C++ Primer 5, SFML Game Development
                  30 mai 2014 à 21:58:59

                  ggrémi a écrit:

                  Je voulais dire des exercices guidés avant d'en arriver a ce point.

                  Hum... à quel point ? Je commence le cours par un programme qui ne fait rien. On ne peut pas faire plus simple (et dès la fin du premier chapitre, il y a des exercices). Et le second chapitre est sur hello world, difficile de faire plus simple aussi

                  Difficile de faire des exercices avant d'avoir vu la moindre syntaxe, non ? Je vois pas trop comment donner un exercice C++ si l'apprenant ne connait même pas main

                  Si tu as un exemple de plan de cours ou d'exercices à faire avant ces chapitres d'introduction, je suis preneur

                  -
                  Edité par gbdivers 30 mai 2014 à 22:00:03

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
                    31 mai 2014 à 23:02:07

                    Pour les calculs sur nombres réels : abs/fabs/labs ou llabs ? max ou fmax ? min ou fmin ?

                    Parler de std::complex, std::ratio, nombre à virgule fixe, time, chrono, bitset dès le début ? (dans la première partie, vu que ces fonctionnalités peuvent être étudier indépendamment du reste ? Pour le moment, je vais rédiger comme ça, peut être que de déplacer)

                    • Partager sur Facebook
                    • Partager sur Twitter
                    Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
                      1 juin 2014 à 4:57:32

                      gbdivers a écrit:

                      Pour les calculs sur nombres réels : abs/fabs/labs ou llabs ? max ou fmax ? min ou fmin ?

                      J'avais, il y a quelques jours rencontré ce qui ressemblerai un problème avec gcc et les double/long double. Selon le mode de compilation, gcc peut avoir des comportements qui semblent bizarres. Un truc du genre, lire le double peut changer sa valeur, etc.

                      Il me semble qu'il faut donner les bonnes options de compilations pour les gens qui compilent avec GCC, ça évitera au lecteurs de s'arracher la tête quand le programme ne produit pas des résultats cohérents avec le cours.

                      gbdivers a écrit:

                      Parler de std::complex, std::ratio, nombre à virgule fixe, time, chrono, bitset dès le début ? (dans la première partie, vu que ces fonctionnalités peuvent être étudier indépendamment du reste ? Pour le moment, je vais rédiger comme ça, peut être que de déplacer)

                      Oh oui! std::complex, et std::chrono me semblent de très bons choix. Je ne sais pas si tu veux passer sous silence les quelques jolies bibliothèques Boost comme Boost.units (d'ailleurs, je me demande pourquoi elle n'est pas passé dans le nouveau standard...), mais je pense que ça peut être une bonne idée surtout s'il peut y avoir une sorte d'exercice/TP plus tard dans le cours où l'on a besoin de faire une petite simulation physique ou un truc du genre. Et ça incitera les quelques curieux à ne pas avoir peur de l'univers de Boost pour quand ils voudront expérimenter d'autres choses.

                      Pour la suite, je ne sais pas si tu traiteras de Qt dans la nouvelle version du tuto (je ne l’espère pas). Si tu compte ne pas en parler, il se peut que Boost.Signals2 soit un bon substitut aux signaux-slots de Qt.

                      En tout cas je vois que ça avance très bien. Keep up the good work! ;)

                      • Partager sur Facebook
                      • Partager sur Twitter
                        1 juin 2014 à 10:42:16

                        Ok pour fabs() & cie dans un cours de ... C.

                        On a les surcharges en C++ -> std::abs()

                        std::complex peut être cité. Il ne mérite pas forcément un cours complet. Apprendre à lire une doc est pas mal aussi.

                        bitset éventuellement pour ceux qui doivent manipuler des champs de bits.

                        chrono au chapitre : optimisons nos programmes et mesurons leurs perfs.

                        • Partager sur Facebook
                        • Partager sur Twitter
                        C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.
                          1 juin 2014 à 10:54:22

                          Je n'ai pas trop regardé ton problème de long double. J'ai testé avec IdeOne, pas de problème : http://ideone.com/dRkqTe. Idem avec Coliru. Comme j'ai commencé volontairement le cours sans présenter comment installer un environnement de développement (c'est abordé par la suite), ce n'est pas un problème que va rencontré l'apprenant (comme si les apprenants allaient faire ce que j'attends d'eux... je rêve :D ). De toute façon, les long double (et plus généralement les différents types de taille différente) seront vu dans le chapitre sur les variables et les types. Par contre, il faudra effectivement que j'ajoute un chapitre sur le support du langage un moment donné

                          Pour boost.units, c'est une bonne idée. Il faut que je vois comment ajouter ce type de libs. Par contre, commencer le cours avec 10 chapitres sur les nombres (entier, réels, virgule fixe, complex, ratio, units...) j'ai peur que le lecture sature (c'est un peu toujours la même chose... et même moi, en tant que rédacteur, j'ai peur de saturer).

                          J'aborderais peut être ces types sous forme de TP orienté. Cela permettrait de changer le format de lecture, faire quelque chose de plus actif, apprendre à aller chercher des informations dans la doc, etc

                          Pour Qt... bien sûr que je vais en parler. Tu n'as pas vu l'image de mon profil ;) 

                          Je comprend la réticence de certain d'avoir du Qt dans un cours C++ (d'ailleurs, j'ai viré pour le moment la partie Qt du cours). L'utilisation de Qt pose des problèmes "non C++" (modification de la chaîne de compilation, code C++ old school) et apprendre Qt dès le début fait que l'apprenant ne fait plus la différence entre le C++ et Qt ("j'ai écrit ce code en QT", en pensant que Qt est un langage... et en faisant l'erreur sur le nom de Qt)

                          Cependant, j'en parlerais, pour plusieurs raisons :

                          • Qt, c'est trop cool :D
                          • apprendre à utiliser une lib fait partie de l'apprentissage du C++ à mon sens
                          • Qt est un incontournable
                          • Qt, c'est trop cool
                          • même si on ne souhaite pas écrire des UI, je pense que n'importe quel dév doit être capable de pondre un code pour créer une fenêtre avec 2 ou 3 boutons. Pas forcement du Qt. Sur plusieurs semaines à lire un cours C++, c'est pas perdu de prendre 1 h ou 2 à lire un chapitre sur Qt
                          • Qt c'est trop cool. Mais je crois l'avoir déjà dit

                          Pour boost.signals, pourquoi pas. En tout cas, c'est une bonne idée d'aborder la problématique de la "communication" entre classes, l'interdépendance, les couplages fort/faible, etc

                          • Partager sur Facebook
                          • Partager sur Twitter
                          Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
                            1 juin 2014 à 11:01:14

                            lmghs a écrit:

                            Ok pour fabs() & cie dans un cours de ... C.

                            On a les surcharges en C++ -> std::abs()


                            J'ai déjà répondu aux autres points

                            Pour fmin, fmax, etc. en fait, ce qui m'a étonné, c'est que ce sont des ajouts du C++11 (je pensais aussi que c'était des reliquats du C, d'autant plus que c'est dans cmath)

                            Du coup, ce qui me chagrine : est ce que c'est fonction n'auraient pas un comportement spécifique aux réels dans certain cas (un détail qui m'aurait échappé ?). Par exemple avec nan ou inf ?

                            • Partager sur Facebook
                            • Partager sur Twitter
                            Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
                              1 juin 2014 à 11:09:43

                              Ce qui m'a chagriné, ce sont les stoi, stol, & cie

                              Pour les comportements spécifiques, j'ose espérer que std::abs aura été spécialisée pour les masquer -- s'ils existent?

                              • Partager sur Facebook
                              • Partager sur Twitter
                              C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.
                                1 juin 2014 à 11:30:50

                                lmghs a écrit:

                                Ce qui m'a chagriné, ce sont les stoi, stol, & cie

                                Il y a la même chose pour abs : abs pour retourner le même type que l'argument passé, mais il y a également labs pour retourner systématiquement un long et llabs pour retourner systématiquement un long long

                                Le problème avec stoi, stol, etc. c'est que le type retourné ne peux pas être déduis à la compilation de la chaîne, donc le dev doit choisir lui même le type qu'il faut. Après, ils auraient peut pu faire des fonctions template sto<int>, sto<long>, etc. mais c'est pareil j'ai l'impression (en plus de caractères)

                                lmghs a écrit:

                                Pour les comportements spécifiques, j'ose espérer que std::abs aura été spécialisée pour les masquer -- s'ils existent?

                                Le point de la doc qui m'a intrigué, c'est "If one of the arguments is NaN, this function returns the other argument. If both arguments are NaNs, the function returns NaN". Je ne sais pas si c'est la cas avec max. Petit test rapide : 

                                #include <iostream>
                                #include <cmath>
                                using namespace std;
                                
                                int main() {
                                	cout << std::max(1.0f, 0.0f) << endl;
                                	cout << std::max(1.0f, NAN) << endl;
                                	cout << std::max(NAN, 0.0f) << endl;
                                	cout << std::max(NAN, NAN) << endl;
                                	cout << endl;
                                	
                                	cout << std::fmax(1.0f, 0.0f) << endl;
                                	cout << std::fmax(1.0f, NAN) << endl;
                                	cout << std::fmax(NAN, 0.0f) << endl;
                                	cout << std::fmax(NAN, NAN) << endl;
                                	return 0;
                                }

                                avec ideone :

                                1
                                1
                                nan
                                nan
                                
                                1
                                1
                                0
                                nan

                                J'ai l'impression que max retourne le premier argument si tu as au moins 1 nan comme argument. Donc comportement différent



                                -
                                Edité par gbdivers 1 juin 2014 à 11:31:20

                                • Partager sur Facebook
                                • Partager sur Twitter
                                Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
                                  1 juin 2014 à 11:46:24

                                  Perso je soutiens gbdivers dans le fait qu'il faille apprendre à se servir de Qt (ou de wxWidgets ou de ce que vous voulez) pour les raisons suivantes :

                                  - C'est l'occasion idéale de mettre en place des designs patterns

                                  - Ça motive les débutants (le lecteur visé n'est pas un barbu de la console que je sache :lol:)

                                  - Ça ouvre l'accès à des projets plus conséquents

                                  - Et par conséquent, plus de projets possibles, plus d'algorithmie et de concepts ! (Par exemple on peut voir les threads pour un système d'exploration de fichiers etc ... Ça crée de l’intérêt concret à certains concepts et ça permet de les mettre en œuvres)

                                  <troll> Sinon, pourquoi ne pas leur faire coder leur propre système de GUI avec SFML ? :lol: </troll>

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                  Tous les crétois sont menteurs. Je suis génial. | Nouveau Sdz ? | Entrainement à l'algorithmique | Mon Devblog | Cpp Reference | Livres Recommandés : C++ Primer 5, SFML Game Development
                                    1 juin 2014 à 11:52:08

                                    Parce que je connais pas la SFML. Par contre, dans le chapitre 2175, je compte parler d'OpenGL...

                                    Sinon :

                                    - on peut faire (et on fera) des DP sans Qt

                                    - il faut que je pense à aller me raser

                                    - on peut faire des projets très conséquent sans Qt. Et on peut passer toute sa vie de dev C++ sans faire d'UI

                                    - faire des algos et concepts spécifique à Qt, c'est moins générique que faire des algos et concepts non spécifique à Qt... donc c'est moins bien

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                    Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
                                      1 juin 2014 à 12:23:01

                                      Bien sur qu'on peut faire des designs patterns sans Qt ! Mais c'est une très bonne source pour en voir ! (Je pense par exemple au listener)

                                      Et bien sur qu'on peut faire du dev sans GUI je n'ai jamais prétendu le contraire ! :lol:

                                      Par contre, je ne pensais pas à faire des algos spécifiques à Qt, je voulais juste dire que créer un logiciel graphique pose des problèmes auxquels on aurait pas été confrontés en console ! (Collisions par exemple)

                                      Sinon le coup de faire sa propre GUI j'ai lancé ça pour rigoler mais je me rend compte que comme dernier gros TP sur un tuto opengl/C++ ce serait génialissime ! *_* Ça mélange design pattern et conception réfléchie à algorithmie tout en passant par la case événementielle ! Ça ferait un bon défi de vacances d'été ça ! :D

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                      Tous les crétois sont menteurs. Je suis génial. | Nouveau Sdz ? | Entrainement à l'algorithmique | Mon Devblog | Cpp Reference | Livres Recommandés : C++ Primer 5, SFML Game Development
                                        1 juin 2014 à 13:01:13

                                        valent20000 a écrit:

                                        - Ça ouvre l'accès à des projets plus conséquents

                                        - Et par conséquent, plus de projets possibles, plus d'algorithmie et de concepts ! (Par exemple on peut voir les threads pour un système d'exploration de fichiers etc ... Ça crée de l’intérêt concret à certains concepts et ça permet de les mettre en œuvres)

                                        Autant pour le reste, je suis d'accord, autant pour ces 2 points, je ne vois pas ce que Qt apporte ... Surtout pour le premier point cité.
                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                        Posez vos questions ou discutez informatique, sur le Discord NaN | Tuto : Preuve de programmes C
                                          1 juin 2014 à 13:11:27

                                          Je te l'accorde, ça marche pour n'importe quelle bibliothèque, mais après faut faire en fonction de celui qui crée le tuto aussi, en l’occurrence c'est gbdivers et comme il le dit si bien :

                                          gbdivers a écrit:

                                          Pour Qt... bien sûr que je vais en parler. Tu n'as pas vu l'image de mon profil ;) 


                                          :lol:

                                          Après pour justifier ce que j'ai dit : comment dire ? Le premier ouvre l'accès parce que des idées de projets en console on en à pas des masses (suffit de voir les exemples et les tp des tutoriels c'est tous les mêmes !), alors que quand on fait du GUI d'un coup l'inspiration vient comme par magie ! :D Et ça ouvre des possibilités de projets et par conséquent d'algos .

                                          Après ce n'est qu'un avis comme un autre, et je suis loin d'être un expert ! :p

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                          Tous les crétois sont menteurs. Je suis génial. | Nouveau Sdz ? | Entrainement à l'algorithmique | Mon Devblog | Cpp Reference | Livres Recommandés : C++ Primer 5, SFML Game Development
                                            1 juin 2014 à 13:24:18

                                            Oui, des idées de projets avec Qt, on peut en avoir plein. Mais faire une calculatrice, un tableau, un éditeur, etc. c'est un peu toujours la même chose. S'amuser à placer un bouton en haut ou en bas ou créer un bouton en rouge sur vert, c'est du design d'interface et de la connaissance de Qt, pas de la programmation C++. Perso, du moment qu'une interface est fonctionnelle, ça me suffit. C'est un truc de débutant de perdre des heures pour changer la couleur de fond d'un bouton, c'est joli, mais ça sert à rien

                                            Ce qui me semble vraiment important à apprendre pour un dev C++, c'est de savoir correctement concevoir son programme pour que Qt ne soit pas utilisé de façon intrusive (ce qui permet de renforcer la réutilisabilité du code)

                                            Et contrairement à ce que l'on pourrait penser, la plus grosse partie de mon (ancien) boulot (pour la partie programmation), c'est du calcul numérique, pas du Qt :) En fait, je ne suis pas du tout spécialiste Qt... et je suis le premier à dire que Qt, c'est du C++ objet old school avec du code qu'il ne faut pas prendre en exemple (par contre, en termes de gestion de projet et de qualité de rédaction du code, oui)

                                            Bref, il y a pas mal de chose à faire avec le C++ sans Qt et il y aura une grosse partie sur Qt, mais la distinction sera faite 

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                            Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
                                              1 juin 2014 à 14:49:07

                                              lmghs a écrit:

                                              Ok pour fabs() & cie dans un cours de ... C.

                                              On a les surcharges en C++ -> std::abs()

                                              gbdivers a écrit:

                                              [...]

                                              Pour fmin, fmax, etc. en fait, ce qui m'a étonné, c'est que ce sont des ajouts du C++11 (je pensais aussi que c'était des reliquats du C, d'autant plus que c'est dans cmath)

                                              C'est en réalité des ajouts du standard C99 (exemple 1, exemple 2). Il les ont rajouté dans le C++11 parce qu'ils ont jugé qu'il était peut être temps que les compilateurs C++ puissent aussi compiler du C99 (il n'y a qu'à voir le statut de l'implémentation de ce standard qui n'a jamais progressé depuis une éternité). Ils les ont rajouté dans le C++11 avec quelques surcharges (selon les cas). Et soyant francs, ces fonctions ne rajoutent pas grand chose comparé au fonctions C++ déjà présentes. Sauf pour les quelques exceptions, prenant llround() par exemple, une fonction initialement  C99 qui renvoie du long long int que l'argument soit du float, double ou long double et ça ce n'est pas ce que propose std::round().

                                              gbdivers a écrit:

                                              Je n'ai pas trop regardé ton problème de long double. J'ai testé avec IdeOne, pas de problème : http://ideone.com/dRkqTe

                                              Ce n'est le premier code qui pose problème (il s'est avéré qu'il s'agissait d'un bug dans MinGW pas dans GCC). Le problème dont je faisais référence c'est dans le deuxième code: http://ideone.com/sIonkH :magicien: (même ideone produit le résultat contre-intuitif). Pour le tester sur votre machine, il faut compiler en mode optimisation (-O ou -O1 suffit pour observer le phénomène). Le problème en question vient de l' "excess precision" de gcc. Pour le régler (merci @alexisdm et StackOverflow), il faut rajouter "-ffloat-store" ou "-msse2 -mfpmath=sse" aux options de compilation.

                                              gbdivers a écrit:

                                              Pour Qt... bien sûr que je vais en parler. Tu n'as pas vu l'image de mon profil ;) 

                                              Oh non, au contraire je suis un très gros fan de Qt, du travail qu'ils ont fait et surtout de la qualité de la documentation et du joli design de la bibliothèque. Cependant, dans le cours de @mateo21 et @nanoc ils justifiaient le fait de ne pas traiter du C++ en beaucoup plus de profondeur par la densité du cours vu qu'ils avaient fait le choix de faire l'introduction à Qt (au passage le deuxième TP:zNavigo, bouffe de la place pour rien). J'aurai aimé voir un cours qui ne parle que du C++, que du nouveau standard (ce que tu fais) et que ça parle de ça en profondeur avec toute sortes de petites bibliothèques utilitaires (comme ce que propose Boost) et qui parle en profondeur de la chaîne de compilation, des gestionnaires de versions et gestionnaires de build...etc bref, ce qu'on rencontre dans l'univers du C++. En bref, quelque chose qui cible les Débutant/Intermédiaire et ceux qui ont envie de s'améliorer et réapprendre les bonnes manières de coder en C++ moderne (car leur prof enseigne n'importe comment.. vous connaissez la chanson).

                                              D'un autre côté, une petite introduction à Qt à la façon du cours @mateo1 et @nanoc me parait très faible et ça incite les gens à penser que Qt ça reste plus de la GUI qu'autre chose. S'il y avait un cours dédié que pour Qt5+ et qui soit séparé du nouveau cours C++, ça peut être une très bonne chose. ça reste mon point de vue. Mais j'imagine qu'il y a un bon nombre de gens ici qui aimeront donner un coup de main pour mener à bien le projet de ce cours; si tu juges cela nécessaire/utile.

                                              gbdivers a écrit:

                                              Par contre, dans le chapitre 2175, je compte parler d'OpenGL...

                                              C'est un peu ça l'esprit ^^
                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                2 juin 2014 à 0:01:08

                                                Merci pour les précisions sur fmax, etc. Ca m'étonnait que ce soit un ajout du C++11. Par contre, le comportement de max et fmax n'est pas strictement équivalent, je verrais comment je traite cela

                                                Pour ton problème, effectivement, je connaissais pas. A voir aussi comment traiter ça

                                                d@rk-marouane a écrit:

                                                J'aurai aimé voir un cours qui ne parle que du C++, que du nouveau standard (ce que tu fais) et que ça parle de ça en profondeur avec toute sortes de petites bibliothèques utilitaires (comme ce que propose Boost) et qui parle en profondeur de la chaîne de compilation, des gestionnaires de versions et gestionnaires de build...etc bref, ce qu'on rencontre dans l'univers du C++. En bref, quelque chose qui cible les Débutant/Intermédiaire et ceux qui ont envie de s'améliorer et réapprendre les bonnes manières de coder en C++ moderne (car leur prof enseigne n'importe comment.. vous connaissez la chanson).

                                                C'est l'idée, on est d'accord

                                                Ensuite, je ne vais parler que de ce que je connais. Je vais parler par exemple de cmake, mais pas de scons ou autotools ou autre. Je pourrais écrire dessus, en me basant sur la doc et les tutos en ligne - le résultat ne serait pas forcement pire qu'un cours du SdZ... - mais il me sera impossible de partager des "bonnes" pratiques. La pédagogie, c'est aussi choisir les sujets que l'on aborder et ceux que l'on met volontairement de côté. Mon but n'est pas d'être exhaustif (si un apprenant arrive en entreprise et qu'on lui dit qu'il a de bonnes bases en C++, ça serait déjà un grand succès pour ce cours)

                                                Pour Qt, comme j'ai écrit un livre dessus (sur Qt Quick), je ne veux pas non plus léser ceux qui ont acheter le livre en proposant trop rapidement un cours en ligne dessus. J'aborderais Qt dans très très longtemps donc - pas avant un an au moins - et dans une partie de cours séparée du C++

                                                -
                                                Edité par gbdivers 2 juin 2014 à 0:02:18

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
                                                  3 juin 2014 à 0:58:43

                                                  gbdivers a écrit:

                                                  Je vais parler par exemple de cmake, mais pas de scons ou autotools ou autre. 

                                                  Oui bien évidement, le cours ne doit pas être exhaustif à point où l'on devient contre productif. Quand j'ai dis l'univers du C++, je pensais aux systèmes les plus courants mais genre traiter un seul cas par thème. Genre parler très brièvement des éditeurs de texte/ide les plus courants, CMake, git/github, CPack et présenter un exemple d'une architecture type d'un environnement de travail/dev/test/déploiement qui soit différent de CodeBlocks/VisualStudio/Eclipse. Et n'hésite pas à sabrer les parties qui te semblent redondante avec la doc officielle de ces outils tout en renvoyant vers la doc ou tutos dédiés au sujet. C'était ça ce que je sous entendais. Mais j'ai l’impression qu'on a la même idée en tête.

                                                  gbdivers a écrit:

                                                  Pour Qt, comme j'ai écrit un livre dessus (sur Qt Quick), je ne veux pas non plus léser ceux qui ont acheter le livre en proposant trop rapidement un cours en ligne dessus. J'aborderais Qt dans très très longtemps donc - pas avant un an au moins - et dans une partie de cours séparée du C++

                                                  ça se comprend, en effet... Il te reste l'option de publier sous un autre pseudonyme et sur le même blog. Crois moi, ils ne verront que du feu! :lol:
                                                  Je viens de voir le sommaire du livre. Il est vrai que ça traite de la majeure partie de la GUI avec Qt ainsi qu'une partie de la communication réseau. En effet, ça risque d'être un peu chaud de ne pas rentrer en conflit avec le contenu du livre.
                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    12 juin 2014 à 22:20:09

                                                    Si je vous dis qu'écrire un cours de C++, c'est long, vous me croyez ?

                                                    (oui, c'est un up déguiser, pour me sentir moins seul :) )

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                    Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
                                                      12 juin 2014 à 23:47:57

                                                      Salut, ton initiative me semble être une bonne idée, mais (désolé si ça a déjà été dit) ce qui pousse les gens a commencer un langage de programmation en général c'est d’obtenir un résultat graphique, donc a mon idée il faudrait un chapitre-TP avec une lib graphique (QT, SFML ou autre) vers la moitié du tuto maximum, déjà ça fait un peut pratiquer l’étudient, mais en plus en obtenant des résultats graphiques, ça le motive a continuer ^^
                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        12 juin 2014 à 23:49:58

                                                        Je sais, j'ai dit la même chose. Et la partie graphique arrivera avant le moitié du cours. Probablement dans le premier tiers... c'est à dire au chapitre 57 environ :)
                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                        Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.
                                                          12 juin 2014 à 23:59:52

                                                          HéHé, me tarde de voir ce que ça donnera, moi qui ne me suis jamais intéresse au c++11 xD
                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                            13 juin 2014 à 0:01:24

                                                            En fait, après réflexion, peut être même pas au chapitre 57. Je suis presque au chapitre 20 et je n'ai abordé que les variables et les types de base. J'aborderai la POO au chapitre 50. Qt devrait donc venir entre les chapitres 150 et 200 ?

                                                            -
                                                            Edité par gbdivers 13 juin 2014 à 0:01:40

                                                            • Partager sur Facebook
                                                            • Partager sur Twitter
                                                            Pour poser des questions ou simplement discuter informatique, vous pouvez rejoindre le discord NaN.

                                                            Nouveau cours C++ "moderne"

                                                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                            • Editeur
                                                            • Markdown