Creare la prima app usando Try .NET

Completato

All'inizio di questo modulo si è supposto che fosse già stata scritta un'applicazione "Hello World" usando C#. In caso contrario, è consigliabile rivedere il primo modulo di questo percorso di apprendimento, Introduzione alla scrittura di codice C#.

Per semplicità, si riscriverà l'applicazione "Hello World", ma questa volta si prende una prospettiva .NET e si vedrà cosa accade dietro le quinte.

Creare un'app semplice usando C#

In precedenza si è visto che Try .NET fornisce un modo semplice per sperimentare l'uso di C# e .NET. È possibile usare Try.NET senza installare software nel computer locale.

Nota

In questo modulo si usa una versione di Try .NET integrata nel browser. Per sperimentare l'applicazione al termine di questo esercizio, passare a https://try.dot.net. Try .NET è un ottimo modo per provare piccoli esempi di codice senza eseguire alcuna installazione nel computer locale.

Passaggio 1 - Scrivere il codice

Nell'editor .NET, sul lato destro di questa pagina Web digitare l'esempio di codice seguente o copiare l'esempio di codice e quindi incollarlo nell'editor .NET.

Console.WriteLine("Hello world!");

Come si è appreso nel modulo dei prerequisiti, "Hello World" è un esempio di codice semplice e canonico scritto dagli sviluppatori per comprendere la sintassi di base dei nuovi linguaggi di programmazione. Da questo semplice esempio è possibile apprendere molte informazioni sulla sintassi C#, Per il momento viene usato per ottenere altre informazioni specifiche su .NET.

Passaggio 2 - Eseguire il codice

Selezionare il pulsante verde Esegui nell'editor .NET. Se il codice C# immesso è corretto, nel riquadro Output vengono visualizzate le parole "Hello World!".

Importante

Se si verificano errori durante l'esecuzione del codice, copiare il codice, incollarlo nell'editor .NET e quindi provare a eseguirlo nuovamente.

Che cosa accade al codice scritto?

La versione per il browser di Try .NET nasconde parte del codice che viene visualizzato quando si compila un'applicazione completa usando Try .NET, Visual Studio 2022 o Visual Studio Code.

Ecco l'aspetto dell'esempio quando si include il codice nascosto:

using System;

public class Program
{
  public static void Main()
  {
    Console.WriteLine("Hello world!");
  }
}

L'ambiente Try .NET nel browser usa gli stessi passaggi descritti in precedenza. L'unica differenza è che parte del codice viene nascosta per semplificare l'esperienza.

Esaminando la visualizzazione espansa del codice, è possibile notare una serie di parentesi graffe { }. C# usa una coppia di parentesi graffe per definire un blocco di codice. Tipi di blocchi di codice diversi vengono usati per scopi diversi.

Il codice public static void Main() incluso il set di parentesi graffe definisce un tipo di blocco di codice denominato metodo. Un metodo contiene un raggruppamento di codice con un singolo scopo o responsabilità nel sistema software.

In questo caso, il metodo contiene solo una riga di codice e lo scopo è quello di visualizzare un messaggio. Programmi più grandi possono contenere centinaia o migliaia di metodi.

I metodi sono organizzati all'interno di altri blocchi di codice detti classi. Una classe può contenere uno o più metodi. Tutti i metodi in una classe hanno uno scopo correlato nel sistema. La classe nel codice precedente è chiamata Program.

Nella riga di codice inserita Console.WriteLine()chiama, ovvero esegue, il metodo WriteLine(). Il metodo WriteLine() è contenuto nella classe Console.

Dove si trova questo codice? Nella libreria di classi base. In realtà, il nome completo è System.Console.WriteLine(). Nell’esempio di codice precedente si può notare che la prima riga è:

using System;

La parola System viene omessa nella chiamata a Console.WriteLine(), ma la prima riga di codice using System; indica al compilatore C# di eseguire la ricerca nella libreria di classi base se non è possibile trovare la definizione del metodo nel codice.

Nota

Al momento non è necessario preoccuparsi di termini specifici di C# come metodo, classe, System e using. Questi elementi verranno approfonditi più avanti. L'obiettivo di questa unità è concentrarsi sul processo di compilazione ed esecuzione del codice.

Che cosa accade al codice dopo che viene inserito nel metodo Main()?

L'aspetto più importante di questo esercizio è ciò che accade dopo che il codice scritto viene inserito in un metodo Main(). Tenere presente che il processo seguente viene eseguito in un server per conto dell'utente.

  1. Un comando per compilare il nuovo codice richiama il compilatore C#.

  2. Il compilatore C# verifica che il codice possa essere compilato e non contenga errori di sintassi. Se non può compilare il codice, il compilatore si arresta e invia un messaggio di errore nel riquadro Output.

  3. Se il compilatore C# ha esito positivo, il runtime .NET apre l'assembly .NET appena compilato. Per impostazione predefinita, cerca in una classe denominata Program un metodo denominato Main() per iniziare a eseguire le istruzioni.

  4. Un'istruzione alla volta, il runtime .NET valuta ogni riga di codice. Esegue l'istruzione e passa alla riga di codice successiva.

  5. In questo caso, quando viene completata l'esecuzione dell'istruzione per stampare le parole "Hello world!", il percorso di esecuzione continua fino alla riga successiva, ma non trova nulla. Il percorso termina e il runtime .NET rimuove il programma dalla memoria. Nel frattempo, l'output dell'istruzione WriteLine() viene inviato di nuovo al Web browser.

Questa sequenza di eventi e la divisione di base delle responsabilità tra un linguaggio di programmazione, un compilatore e un runtime, sono i concetti di base più importanti da comprendere.