Si vous vous intéressez aussi au langage et à la plate-forme .Net, visitez mon blog
Le C# (prononcez (transcription française) sicharpe, et pas saidièse, merci ;-)) est un langage moderne, élégant, bien pensé, multi-plateformes, orienté-objet et incompris par trop de monde (mais tant que Miguel de Icaza a compris, c'est bon... ;-)) crée par Microsoft, une petite start-up qui a fait quelques produits ayant eu un certain succès, comme Windows ou Office. Il allie la modernité d'un langage jeune (première "version finale" en 2001) au confort des langages qu'on connait déjà bien (C, C++, Java). Pour vous donner un ordre d'idée, j'ai mis 3 minutes à apprendre Java depuis PHP, et faire la transition vers C# s'est fait très naturellement, et avec beaucoup de plaisir.
C# est facile d'accès, même pour un débutant, et c'est mon langage de programmation préféré... du moins à ce jour (j'écris cela en octobre 2007). Aux gens du monde libre (dont je considère faire partie), je dis que c'est un standard (standardisé par l'ECMA, une institution Européenne), et à ceux qui pensent que Java est plus fiable ou plus pérenne, je suggère de lire la suite
C# est rempli de petites fonctionnalités originales, qui le rendent très agréable à utiliser.
using System; // indique que l'on va utiliser la librairie System.
namespace ProgrammeExemple // c'est l'élement racine de la hiérarchie de notre programme
{
class ClasseExemple
{
private int argument;
public int Argument {
get {
return argument;
}
}
public ClasseExemple() // c'est le constructeur de la classe, qui effectue des actions quand un objet est crée
{
Console.WriteLine("Une instance de la classe ClasseExemple a été créée ! Coucou :)");
}
public void Methode(int parametre) // on déclare une méthode d'objet prenant un paramètre
{
Console.WriteLine("Hello, je suis la méthode Methode, et vous m'avez passé le paramètre " + parametre);
argument = parametre; }
public static void Main(String[] args)
{
Console.WriteLine("Le programme démarre");
ClasseExemple e = new ClasseExemple();
e.Methode(5);
Console.WriteLine("Le champ Argument de la classe ClasseExemple vaut maintenant " + e.Argument);
Console.WriteLine("Le programme est terminé !");
}
}
}
Ce programme minimal va vous dire "Le programme démarre", puis un objet de la classe ClasseExemple va vous saluer, puis sa méthode Methode va vous signaler que vous lui avez passé le paramètre 5. C'est plutôt simple, non ? Supprimez le namespace, remplacez Console.WriteLine par System.out.println, supprimez la majuscule aux méthodes, ajoutez de moches méthodes get...() et set...() et vous récupérez Java ;-). (mais C# est mieux à l'usage sur de gros projets, son expressivité est meilleure)