|
| Vediamo come scrivere il nostro primo programma in C#: Hello World! |
Hello World
Bene, come dice il titolo iniziamo a vedere il nostro primo esempio in C#
using System
namespace HelloProg
{
class HelloWorld
{
static void Main(string[] args)
{
Console.WritwLine("Hello, World!");
}
}
}
Analizziamo il codice:
Come visibile, il programma quando eseguito scrive a video la stringa "Hello, World!". La prima riga, definisce il fatto che stiamo operando all'interno del namespace System, la seconda, invece definisce il namespace HelloProg. Le righe che seguono definscono invece rispettivamente la classe HelloWorld con il suo metodo Main che scrive a video la stringa.
Il metodo main accetta in input un array contenente l'elenco dei parametri passati da linea di comando e non restituisce nulla.
Namespace
Il namespace è un modo per raggruppare le classi, un namespace può contenere a sua volta un altro namespace. Per identificare una classe poi è necessario specificare il nome del namespace. Ad esempio, la classe che abbiamo dichiarato prima sarà:
System.HelloProg.HelloWorld()
Commenti
I commenti sono simili ai commenti che troviamo in C++ o in Java. Per i commenti mono-riga si utilizza il doppio slash "//". Mentre per i commenti multi riga si includono le rige di commento tra "/*" e "*/"
Es:
// Questo è un commento mono riga
/*
Questo è
un commento
multi-riga
*/
Il compilatore
Adesso che abbimo scritto il nostro programma, lo salveremo come helloworld.cs (l'estensione cs identifica i sorgenti C#). Dovremo poi aver installato sulla nostra macchina il.NET framework oppure Sscli, Mono, ecc.
Se abbiamo installato il .NET framework Sdk, da linea di comando possimo digitare:
>CSC helloworld.cs
Se non si sono verificati errori nella fase di compilazione, allora il compilatore avrà creato il file hello.exe
Il compilatore dispone poi di una serie di altri parametri, uno è il /target: con il quale è possibile definire il tipo di output che sidesidera.
I valori possibili sono:
- /target:exe (Genera un file eseguibile con interfaccia console) .EXE
- /target:winexe (Genera un eseguibile con interfaccia console) .EXE
- /target:library (Genera una libreria) .DLL
- /target:module (Genera un modulo) .NETMODULE
Altro parametro interessante è /reference: ed indica se un eseguibile referenzia una libreria per funzionare, es:
> CSC /refrence:utility.dll helloworld.cs
Common Language Runtime
Quando viene lanciato un eseguibile scritto in .Net entra in gioco il Common Language Runtime, che un pò come avviene con la virtual machine di java, esamina il codice e lo compila al volo (compilazione JIT), tale compilazione permette tra l'altro di compilare al meglio l'eseguibile in base alla CPU che si sta utilizzando. Il CLR offre numerosi servizi tra cui:
- Gestione della memoria(Garbage collector)
- Gestione dei thread
- Compilazione Just In Time
- Sistema comune di tipi
- Gestione delle eccezioni
- Security
Librerie del framework
Il framework di .Net mette a disposizione varie librerie, le principali sono:
- ASP.net (Xml Web Services, Web forms)
- ADO.net per l'accesso ai dati
- Windows forms per la realizzazione di rich client
|
|