C dieso (programlingvo)

C# (angle nomata C sharp) estas objektema programlingvo kreita de Microsoft. La lingvo estas parto de la infrastrukturo .NET ankaŭ de Microsoft. Ekzistas normoj de ECMA kaj ISO pri C#, sed la plej konataj tradukilo kaj funkcibiblioteko estas tiuj de Microsoft.

La plej forta influo super la kreo de C# estas Java. Plie, C# estis influita de C++, Delphi. La ĉefa projektisto de C# estas Anders Hejlsberg, kiu antaŭe kreis Delphi-n, kiam li laboris en Borland.

Programoj verkitaj per C# rulas en infrastrukturo nomata CLI (Common Language Infrastructure), samkiel aliaj programlingvoj de .NET. La tradukilo unue kreas duonkodon (simile al Java), kiu poste estas tradukita al maŝinkodo je la ruligo de la programo, per JIT-tradukilo.

 Ekzemplaj programoj 
Unue, la klasika programo "Saluton, mondo!" skribita en C#. Ĝi nur montras la mesaĝon kaj finiĝas:
  using System;
  namespace ProgramoSalutonMondo
  {
    class SalutonMondo
    {
      [STAThread]
      static void Main(string[] args)
      {
        Console.WriteLine("Saluton, mondo!");
      }
    }
  }
Ĉi tie estas pli kompleksa ekzemplo de programo en C#. Ĉi tiu programo montras iujn objektemajn esprimojn de la lingvo.
 using System;
 namespace Ekzemplo
 {
     public sealed class Saluton
     {
         string mia;
         public string Valoro
         {
             get
             {
                 return mia;
             }
             set
             {
                 if(value== null)
                     throw new ArgumentNullException();
                 else
                     mia = value;
             }
         }
         public Saluton()
         {
             mia = "Saluton!";
         }
         public override String ToString()
         {
             return mia;
         }
         public static void Main()
         {
             Saluton sal = new Saluton();
             Console.WriteLine(sal.ToString());
             Console.WriteLine(sal.Valoro);
             Console.WriteLine(sal);
             sal.Valoro = "Blah.";
             Console.WriteLine(sal.ToString());
             Console.WriteLine(sal.Valoro);
             Console.WriteLine(sal);
         }
         //La rezulto estas:
         //Saluton!
         //Saluton!
         //Saluton!
         //Blah.
         //Blah.
         //Blah.
     }
 }

Kategorio:Programlingvoj