Quand on écrit un programme en C++, en C, en Ada, en OCam ou en Java, il est toujours traduit à un moment ou un autre en impératif.
C'est le compilateur qui gère la portée des variables pour le C.
C'est le compilateur qui transforme vos beaux appels de fonction C en une séquence 'sauvegarde des registres - sauvegarde du PC - saut à l'adresse de la fonction' et vos return en 'restauration des registres - empilage du résultat - saut à l'adresse d'appel'...
Le paradigme objet ne produit pas de baisse de performance, c'est juste que le compilateur ne connaît pas assez bien le programme qu'il compile. Alors, on l'écrit en C, pour que le compilateur n'ait pas besoin de bien connaître le code qu'il compile. Comme des gens s'amusent à coder des morceaux de leur appli en assembleur, pour compenser un compilateur peu efficace en sélection d'instructions.
A nouveau, le paradigme objet est une façon de modéliser les données employées dans le programme. On cache au développeur certaines complexités, certaines constructions extremement courantes en programmation, avec une certaine garantie de fonctionnement, afin que le développeur se concentre sur les algorithmes, donc sur des choses intéressantes. On limite aussi le risque d'erreur sur des constructions accessoires.
# Le compilateur!
Posté par Jean-Baptiste Mayer . En réponse au journal j'ai un rêve .... Évalué à 3.
Quand on écrit un programme en C++, en C, en Ada, en OCam ou en Java, il est toujours traduit à un moment ou un autre en impératif.
C'est le compilateur qui gère la portée des variables pour le C.
C'est le compilateur qui transforme vos beaux appels de fonction C en une séquence 'sauvegarde des registres - sauvegarde du PC - saut à l'adresse de la fonction' et vos return en 'restauration des registres - empilage du résultat - saut à l'adresse d'appel'...
Le paradigme objet ne produit pas de baisse de performance, c'est juste que le compilateur ne connaît pas assez bien le programme qu'il compile. Alors, on l'écrit en C, pour que le compilateur n'ait pas besoin de bien connaître le code qu'il compile. Comme des gens s'amusent à coder des morceaux de leur appli en assembleur, pour compenser un compilateur peu efficace en sélection d'instructions.
A nouveau, le paradigme objet est une façon de modéliser les données employées dans le programme. On cache au développeur certaines complexités, certaines constructions extremement courantes en programmation, avec une certaine garantie de fonctionnement, afin que le développeur se concentre sur les algorithmes, donc sur des choses intéressantes. On limite aussi le risque d'erreur sur des constructions accessoires.