Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

Discussion: yosefk fqa c++

  1. #1
    r0d
    r0d est déconnecté
    Expert Confirmé Sénior

    Profil pro
    Inscrit en
    août 2004
    Messages
    4 098
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : août 2004
    Messages : 4 098
    Points : 5 754
    Points
    5 754

    Par défaut yosefk fqa c++

    Bonjour,

    je ne sais pas si vous connaissez ce site, c'est plutôt... intéressant, disons.
    C'est une parodie de faq c++, mais en fait ce n'est que de la critique, assez dure parfois, de notre langage préféré (tout en anglais par contre):

    http://yosefk.com/c++fqa/

    On y trouve des phrases amusantes comme par exemple (traduction libre et approximative effectuée par votre humble serviteur):
    Si vous êtes un expert dans les complexités du C++, s'il vous plait considérez ce savoir comme un art martial: quelque chose qu'un vrai maître n'utilise jamais.
    Comme des critiques plus tranchantes, comme par exemple (traduction libre etc.):
    Je ne vais pas prétendre que le C++ n'est pas un langage de haut niveau puisque tous les livres sur le sujet prennetn soin de souligner le contraire. Par contre je dis qu'il est impossible de bien programmer, avec ce langage de programmation orienté objet de haut niveau, si on ne connais pas l'assembleur.
    Il y a des trucs vraiment mouarfant, genre la partie "defective c++" (allusion aux bouquins de Scott Meyers), mais parfois très agaçants aussi...

  2. #2
    Expert Confirmé Sénior
    Avatar de Luc Hermitte
    Homme Profil pro Luc Hermitte
    Développeur informatique
    Inscrit en
    août 2003
    Messages
    4 730
    Détails du profil
    Informations personnelles :
    Nom : Homme Luc Hermitte
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : août 2003
    Messages : 4 730
    Points : 7 790
    Points
    7 790

    Par défaut

    Ce site existe depuis un petit moment maintenant.
    Il est controversé dans l'ensemble. Il y a des choses qui sont justes, mais tout cela est à prendre avec du recul.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média.

  3. #3
    Membre éclairé
    Inscrit en
    novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : novembre 2006
    Messages : 362
    Points : 382
    Points
    382

    Par défaut

    Ce qui est vraiment dommage avec ce site, c'est son approche systématique.

    Je suis le premier à reconnaitre qu'il y a en effet de gros défauts au C++ ou des choses qui étaient des qualités (par rapport à d'autres langages), et qui n'en sont plus suite à l'apparition de nouveaux langages qui sont encore meilleurs sur ces mêmes points.

    Mais ces défauts ne sont pas du tout mis en valeur par ce site, car il critiques tout uniformément.

    Exemple : Dans What is the big deal with OO, je trouve la critique parfaitement anecdotique, et je n'ai jamais eu de problème de ce genre. J'irais même jusqu'à dire que je ne connais pas de langage qui gère la compilation plus rapidement que C++ (templates exceptés, mais il faut bien admettre que peu de langages professionnels gèrent vraiment les templates)

    Contre-Exemple : Dans What's the big deal with generic programming?, je trouve la critique parfaitement justifiée et elle aurait mérité d'être mise en valeur par rapport à la précédente.

  4. #4
    Membre Expert
    Avatar de Goten
    Inscrit en
    juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 24

    Informations forums :
    Inscription : juillet 2008
    Messages : 1 580
    Points : 2 170
    Points
    2 170

    Par défaut

    Citation Envoyé par Feriaman Voir le message
    Contre-Exemple : Dans What's the big deal with generic programming?, je trouve la critique parfaitement justifiée et elle aurait mérité d'être mise en valeur par rapport à la précédente.
    Ah ? commentaires inlines :

    Templates are hard to use (and not only define & implement) due to cryptic compiler error messages, extremely long compilation time and remarkable hostility to symbolic debugging
    Faux... suffit juste de savoir s'en servir c'est tout.


    Templates are a form of code generation, and hence they don't make code faster or slower compared to code you'd write manually.
    faux... ( ET etc)

    They do tend to make it larger since the compiler generates the same code many times.
    Faut sortir des années 90...
    "Hardcoded types are to generic code what magic constants are to regular code." --A. Alexandrescu

  5. #5
    Membre Expert

    Inscrit en
    mai 2008
    Messages
    1 009
    Détails du profil
    Informations forums :
    Inscription : mai 2008
    Messages : 1 009
    Points : 2 199
    Points
    2 199

    Par défaut

    Citation Envoyé par Goten Voir le message
    Templates are hard to use (and not only define & implement) due to cryptic compiler error messages, extremely long compilation time and remarkable hostility to symbolic debugging
    Faux... suffit juste de savoir s'en servir c'est tout.
    Ah...
    J'espère que tu participeras au sujet "Template: quels outils" pour nous éclairer de ton savoir.

  6. #6
    Membre Expert
    Avatar de Goten
    Inscrit en
    juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 24

    Informations forums :
    Inscription : juillet 2008
    Messages : 1 580
    Points : 2 170
    Points
    2 170

    Par défaut

    Quote fail, je réagissais aux points :
    "due to cryptic compiler error messages" et "extremely long compilation time"
    "Hardcoded types are to generic code what magic constants are to regular code." --A. Alexandrescu

  7. #7
    Membre éclairé
    Inscrit en
    novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : novembre 2006
    Messages : 362
    Points : 382
    Points
    382

    Par défaut

    Citation Envoyé par Arzar
    J'espère que tu participeras au sujet "Template: quels outils" pour nous éclairer de ton savoir.
    Je plussoie Arzar.

    Tu as le droit d'être extrémiste, et tu as le droit de n'avoir pas la même opinion que moi (ou plutôt en l'occurrence que l'auteur de la FQA, que j'approuve sur ce point).

    Si tu sais des choses que nous ne savons pas : s'il te plait instruit nous.

  8. #8
    Membre Expert
    Avatar de Goten
    Inscrit en
    juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 24

    Informations forums :
    Inscription : juillet 2008
    Messages : 1 580
    Points : 2 170
    Points
    2 170

    Par défaut

    J'ai donné des exemples, maintenant si ça fait de moi un extrémiste... :'

    Les messages cryptique : définition de concept + static assert.

    Les expressions template (ET) => code plus rapide à l'exécution.

    La rapidité de compilation => y'a les PCH, évité les instantiations inutiles et prématures. (mais ici je vous l'accorde c'est pas toujours la panacé)

    Le code bloat : comme je l'ai dis, on est plus dans les années 90 les compilos sont intelligents.

    Fin bon, suffit de regarder les projets dehors qui utilisent _massivement_ les templates (TMP / ET etc) pour se rendre compte que ce qu'il dit est caduc, et que non ce n'est pas qu'un outil d'universitaire un peu fou, c'est utilisé dans du code de production qui _tourne_ vraiment...


    edit : quant à l'histoire des outils, puisque c'est ça qui à l'air de vous avoir fait réagir (alors que moi je ne réagissais jsutement pas à cette partie) j'utilise presque uniquement vim et ce que vous décrivez j'ai appris à composer avec.
    "Hardcoded types are to generic code what magic constants are to regular code." --A. Alexandrescu

  9. #9
    Rédacteur/Modérateur
    Avatar de 3DArchi
    Inscrit en
    juin 2008
    Messages
    7 636
    Détails du profil
    Informations forums :
    Inscription : juin 2008
    Messages : 7 636
    Points : 13 093
    Points
    13 093

    Par défaut

    Citation Envoyé par Goten Voir le message
    Fin bon, suffit de regarder les projets dehors qui utilisent _massivement_ les templates (TMP / ET etc) pour se rendre compte que ce qu'il dit est caduc, et que non ce n'est pas qu'un outil d'universitaire un peu fou, c'est utilisé dans du code de production qui _tourne_ vraiment..
    _massivement_ n'est pas forcément le premier terme qui me serait venu pour l'utilisation des génériques dans des projets en entreprise.

  10. #10
    Membre Expert
    Avatar de Goten
    Inscrit en
    juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 24

    Informations forums :
    Inscription : juillet 2008
    Messages : 1 580
    Points : 2 170
    Points
    2 170

    Par défaut

    Citation Envoyé par 3DArchi Voir le message
    _massivement_ n'est pas forcément le premier terme qui me serait venu pour l'utilisation des génériques dans des projets en entreprise.
    Je pensais plus à une utilisation indirecte (via une bibliothèque), d'ailleurs quand je l'ai écrit j'avais spirit en tête.
    "Hardcoded types are to generic code what magic constants are to regular code." --A. Alexandrescu

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •