• [^] # Re: Chacun son style

    Posté par . En réponse à la dépêche Naissance d'un géant : Java. Évalué à 3.

    Je suis plutôt d'accord (même si toutes tes réponses dans les commentaires de cette dépêche ont tendance à être un chouïa trop agressifs à mon gout...). Hors domaines extrêmement spécifiques comme l’embarqué [1], le calcul haute performance [2], et dans une certaine mesure les jeux vidéo [3], le reste du temps, je préfère des langages qui me garantissent plus de choses que ce que C et C++ offrent. J'adore le C, j'aime bien le C++, mais c'est parce que j'ai un coté bidouilleur (et que je bosse dans le HPC, donc C+assembleur c'est assez fréquent). Par contre bizarrement, quand j'ai du traitement de chaines a faire de façon un peu intelligente, ou bien d'autres petits traitements (sur potentiellement de gros volumes de données), je ne sais pas vous, mais je préfère quand même bien plus des langages de plus haut niveau ou en tout cas qui vont me permettre de réduire mon temps de développement (grâce a une bonne analyse statique, parce que le langage lui-même propose des constructions de haut-niveau tels que des tables de hachage, des tableaux dynamiques, etc.).

    Le C et le C++ ne devraient être utilises selon moi que si la performance est un enjeu critique pour la majorité de l'application. Dans l’idéal bien sûr, on voudrait de la performance partout. En pratique, optimiser un bout de code pour une architecture particulière peut prendre des semaines, voire des mois. Et à, c'est en supposant qu'on est certain que l'algo utilise est le meilleur pour la tache donnée (et dans un contexte donnée).

    [1] Je parle vraiment de matériel avec juste "une" tache bien spécifique a réaliser (avec des contraintes de puissance de calcul et d'espace mémoire drastiques), pas un machin qui peut se permettre d'avoir une JVM embarquée...
    [2] Par calcul haute performance, je pense au traitement vidéo, a diverses simulations en physique et chimie, a l'utilisation de gros calculs mathématiques (par exemple de l’algèbre linéaire creuse ou dense), mais aussi au parcours de graphes en parallèles.
    [3] Dans une certaine mesure parce qu'une bonne partie est réalisée a l'aide de langages de scripts customisés pour un moteur donné.