Ne parlons même pas de la différence entre le C et le C++ ...
Pour les niveaux, comme d'hab, manque de recul et de connaissance des voisins.
Il n'y a pas deux directions, haut vers bas. Mais plusieurs axes, et chaque langage va aller plus ou moins loin sur chaque axe. Java&C# iront loin sur la réflexivité dynamique, C++ s'en sort à peu près sur la réflexivité statique où les deux autres sont absents (cf boost.unit dont le principe fut réfusé pour Java), Java&C# s'en sortent à peu près sur la généricité, C++ va loin sur la généricité (allez donc faire des fonctions génériques sur énumérés en Java...), C&C++ vont loin sur l'axe du hard (a.k.a. bas niveau), etc.
Et je peux continuer à trouver d'autres axes qualifiés de "haut niveau" sur lesquels Java est en retard vis à vis du C++ comme p.ex. la programmation par contrat.
Bref, cette dichotomie haut niveau vs bas niveau est complètement désuète aujourd'hui en regard du multiparadigme et autres choses supportées par les langages.
Les problèmes du C++ ?
- Langage particulièrement méconnu et mal enseigné. D'où les mauvais réflexes, vos segmentation faults etc
- Langage particulièrement méconnu et mal enseigné qui génère des populations qui ne le connaissent pas mieux
- Langage complexe qui rend le support par des outils d'analyse automatique difficile ;
Pour vos histoires de complexité de mise en œuvre des expressions templates pour faire du calcul vectoriel performant. Oui. Et ? Ca existe déjà et ça marche. Où est le problème? Nos voisins ont des frameworks qui font des choses compliquées à leur place. Leur demande-t-on de repartir de 0 ? Je n'ai pas l'impression que c'était le topic de ce troll ci. Le D est trop maigrichon pour être comparé aux monstres de production à la chaine que sont Java&C# -- sur le thème de la productivité.
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. Et de toutes façons, ma BAL sur dvpz est pleine...
Partager