le Langage C#

 





Depuis près de vingt ans, le C et le C++ sont les langages les plus utilisés pour le développement de logiciels. La raison de ce succès est principalement due à leurs possibilités proches de la machine et au contrôle puissant et précis que le programmeur peut avoir sur son code. Malheureusement cette souplesse se fait au détriment de la vitesse de développement.du fait de la complexité et des délais liés à ces langages.
Beaucoup de développeurs se sont alors tournés en 1994 vers le langage Java. Celui-ci en plus d'une très grande simplicité, proposait des innovations majeures, notamment une extensibilité à l'infini ("Java est écrit en Java" ) et des programmes portables ("write once, run every where"). Il suffit en effet de compiler un source de ce langage en un fichier appelé "byte-code" et celui-ci pourra être lu par n'importe quel OS possédant un interpréteur Java (ou "machine virtuelle Java"), c'est à dire un programme capable de lire du "byte-code".
En outre le Java est extrêmement sécurisé : Il est ainsi impossible de compiler un programme comportant des erreurs, d'écrire en dehors des limites d'un tableau, et (cerise sur le gâteau), il évite les fuites de mémoire grâce au "Garbage Collector" (ramasseur de déchets) qui restitue la mémoire de tous les objets dont la vie est terminée.
Malheureusement le Java (principalement à cause de son mode de compilation) s'avère plus lent que d'autres langages objets comme le C++. Ses détracteurs lui reproche de ne pas permettre l'héritage multiple, et de ne pas avoir un accès à l'adressage mémoire.




Brian Kernighan, Bjarne Stroustrup et James Gosling les auteurs respectifs du C, C++ et Java.


Beaucoup de programmeurs se sont mis en quête d'un langage offrant un meilleur équilibre entre puissance et souplesse. Une solution idéale allierait à la rapidité du développement du Java, sa simplicité, sa conception objet et sa sécurité avec la puissance et le contrôle du C et du C++. Le tout avec un accès à toutes les fonctionnalités de la plate-forme pour laquelle le programme est développé. Il faudrait enfin un environnement de programmation en synchronisation totale avec les normes Web émergeantes, permettant une intégration aisée avec les applications existantes.
C'est là, la définition du C# (prononcer "C Sharp") le tout nouveau langage de Microsoft destiné au Microsoft .NET Framework.
Avec sa conception orientée objet élégante, C# permet le développement de composants allant des objets de haut niveau aux applications de niveau système. De même, grâce à quelques constructions simples, C# permet de convertir des composants en services Web qui pourront être appelés sur Internet à partir de n'importe quel langage s'exécutant sur n'importe quel système d'exploitation.
Et surtout, C# est conçu pour apporter la rapidité de développement au programmeur C++, sans toutefois diminuer la puissance et le contrôle qui caractérisent depuis toujours le C et le C++. Du fait de cet héritage, C# reste très fidèle au C et C++ sans pour autant s'éloigner du Java. Les développeurs habitués à ces langages peuvent rapidement devenir productifs en C#.


 

Sommaire