Précédent   Forum du club des développeurs et IT Pro > C et C++ > C++ > Communauté
Communauté Suivez l'actualité C++ et contribuez à la vie de la communauté francophone C++
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 17/12/2010, 16h47   #1
r0d
Expert Confirmé Sénior
 
Inscription : août 2004
Messages : 3 673
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : août 2004
Messages : 3 673
Points : 4 436
Points : 4 436
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):
Citation:
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.):
Citation:
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...
r0d est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 17/12/2010, 17h57   #2
Luc Hermitte
Expert Confirmé Sénior

 
Avatar de Luc Hermitte
 
Inscription : août 2003
Messages : 4 521
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : août 2003
Messages : 4 521
Points : 5 732
Points : 5 732
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.
__________________
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.
Luc Hermitte est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/03/2011, 17h53   #3
Feriaman
Membre éclairé
 
Inscription : novembre 2006
Messages : 362
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 362
Points : 341
Points : 341
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.
Feriaman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/03/2011, 18h29   #4
Goten
Membre Expert
 
Avatar de Goten
 
Inscription : juillet 2008
Messages : 1 580
Détails du profil
Informations personnelles :
Âge : 22

Informations forums :
Inscription : juillet 2008
Messages : 1 580
Points : 2 041
Points : 2 041
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 :

Citation:
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.


Citation:
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)

Citation:
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
Goten est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/03/2011, 18h39   #5
Arzar
Membre Expert
 
Inscription : mai 2008
Messages : 937
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 937
Points : 1 785
Points : 1 785
Citation:
Envoyé par Goten Voir le message
Citation:
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.
Arzar est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 10/03/2011, 19h02   #6
Goten
Membre Expert
 
Avatar de Goten
 
Inscription : juillet 2008
Messages : 1 580
Détails du profil
Informations personnelles :
Âge : 22

Informations forums :
Inscription : juillet 2008
Messages : 1 580
Points : 2 041
Points : 2 041
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
Goten est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/03/2011, 09h31   #7
Feriaman
Membre éclairé
 
Inscription : novembre 2006
Messages : 362
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 362
Points : 341
Points : 341
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.
Feriaman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/03/2011, 12h42   #8
Goten
Membre Expert
 
Avatar de Goten
 
Inscription : juillet 2008
Messages : 1 580
Détails du profil
Informations personnelles :
Âge : 22

Informations forums :
Inscription : juillet 2008
Messages : 1 580
Points : 2 041
Points : 2 041
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
Goten est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/03/2011, 14h41   #9
3DArchi
Rédacteur/Modérateur
 
Avatar de 3DArchi
 
Inscription : juin 2008
Messages : 7 631
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 7 631
Points : 12 159
Points : 12 159
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.
__________________
Ressources proposées par 3DArchi.
Les fonctions virtuelles en C++.
3DArchi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/03/2011, 18h52   #10
Goten
Membre Expert
 
Avatar de Goten
 
Inscription : juillet 2008
Messages : 1 580
Détails du profil
Informations personnelles :
Âge : 22

Informations forums :
Inscription : juillet 2008
Messages : 1 580
Points : 2 041
Points : 2 041
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
Goten est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 02h51.


 
 
 
 
Partenaires

Hébergement Web