GodzilLe 24/07/2006 à 10:25
Enfin faut pas oublier quand même quelque chose, les langage de haut niveau on été fait avec des langages de bas niveau, donc a un moment ou un autres le haut niveau deviens plus générique que ce qu'on peut faire en bas niveau. Il est sur que pour certain trucs que proposent le C# (pour ne citer que lui) n'est possible en C ou ASM (pour parler du "pire") qu'en demandant plus d'effort. Mais avec plus d'effort, en C ou ASM on arrivera toujours a faire un peu mieux (voir bcp mieux dans le pire des cas) C'est comme la comparaison entre C et ASM
Faut mieux un mauvais programmeur C qu'un mauvais programmeur ASM car le compilo C est moins permissif que l'assembleur ASM et donc même en programmant mal le compilo C empêchera certaines bêtises d'arriver, ce qu'en ASM ne ferras pas.
Le seul vrai avantage des langages de haut niveau c'est d'apporter un niveau d'abstraction supplémentaire permettant de ce concentrer sur ce qu'on a a faire plutôt que sur comment le faire. (pour prendre un exemple simple, code un soft qui affiche dans un treeview (sous windows bien sur) avec la lib MSXML en C++, et fait la même chose en .NET avec C#. C# rend les choses bcp plus simple, et sûrement beaucoup plus facilement bug-free. Mais dire que les langages de haut niveau sont plus rapide, oui il sont plus rapide si c'est comparé a un "mauvais" programmeur en langages de bas niveau, ce qui fausse la comparaison. Meme un mauvais programmeur en "haut niveau" grace au facilitées d'optimisation & co fourni par celui-ci.