Che cos'è .NET?

.NET è una piattaforma open source per la creazione di applicazioni desktop, Web e mobili che possono essere eseguite in modo nativo su qualsiasi sistema operativo. Il sistema .NET include strumenti, librerie e linguaggi che supportano lo sviluppo di software moderno, scalabile e ad alte prestazioni. Una community di sviluppatori attiva gestisce e supporta la piattaforma .NET.

 In termini semplici, la piattaforma .NET è un software in grado di eseguire queste attività:

  • Convertire il codice del linguaggio di programmazione .NET in istruzioni che un dispositivo informatico può elaborare.
  • Fornire utilità per uno sviluppo efficiente del software. Ad esempio, può trovare l'ora corrente o stampare il testo visualizzato sullo schermo.
  • Definire un set di tipi di dati per archiviare informazioni come testo, numeri e date sul computer.

Cos'è un'implementazione .NET?

Varie implementazioni di .NET consentono l'esecuzione del codice .NET su diversi sistemi operativi come Linux, macOS, Windows, iOS, Android e molti altri.

. NET Framework 

.NET Framework è l'implementazione .NET originale. Supporta l'esecuzione di siti Web, servizi, app desktop e altro su Windows. Microsoft ha rilasciato .NET Framework all'inizio degli anni '90.

.NET Core

Microsoft ha lanciato .NET Core alla fine del 2014 per consentire il supporto multipiattaforma agli sviluppatori di .NET. La società ha rilasciato la versione più recente di .NET Core, .NET 5.0, nel novembre 2020 e l'ha rinominata .NET. Il termine .NET in questo articolo si riferisce a .NET 5.0. .NET Core è open source su GitHub.

.NET Standard 

.NET Standard è una specifica formale di diverse funzioni (chiamate API). Implementazioni .NET diverse possono riutilizzare lo stesso codice e le stesse librerie. Ogni implementazione utilizza sia le API .NET standard che le API univoche specifiche per i sistemi operativi su cui vengono eseguite.

Perché scegliere .NET?

Facilità di sviluppo

Agli sviluppatori piace usare .NET perché include molti strumenti che semplificano il loro lavoro. Ad esempio, utilizzando la suite Visual Studio, gli sviluppatori possono scrivere il codice più velocemente, collaborare in modo efficiente e testare e correggere il codice in modo efficace.  La possibilità di riutilizzare il codice tra le implementazioni riduce i costi di sviluppo.

Applicazioni ad alte prestazioni

Le applicazioni .NET forniscono tempi di risposta più rapidi e richiedono meno potenza di calcolo. Dispongono di solide misure di sicurezza integrate ed eseguono in modo efficiente attività lato server come l'accesso ai database. 

Supporto della community

.NET è open source, il che significa che chiunque può accedere per utilizzarlo, leggerlo e modificarlo liberamente. Una community attiva di sviluppatori mantiene e migliora il software .NET. La .NET Foundation è un'organizzazione indipendente senza scopo di lucro creata per supportare la community .NET. Fornisce risorse di apprendimento, progetti .NET open source e vari eventi per gli sviluppatori di .NET.

Quali sono i componenti dell'architettura .NET?

.NET ha un'architettura modulare e ottimizzata. Gli utenti possono scegliere diversi componenti per soddisfare le proprie esigenze di sviluppo software.

Questi sono i tre componenti principali di .NET:

  • Linguaggi di .NET
  • Framework di modelli applicativi
  • Runtime .NET 

Gli sviluppatori utilizzano i linguaggi di programmazione .NET e i framework di modelli applicativi per creare le proprie applicazioni .NET. Il runtime .NET esegue quindi tali applicazioni.

Cosa sono i linguaggi di programmazione .NET?

C# (pronunciato C sharp), F# (pronunciato F sharp) e Visual Basic sono i tre linguaggi supportati da Microsoft per lo sviluppo su .NET. Diverse aziende e sviluppatori hanno creato anche altri linguaggi che funzionano con la piattaforma .NET.

C#

C# è un linguaggio di programmazione semplice, moderno e orientato agli oggetti. Con una sintassi simile alla famiglia di linguaggi C, C# è familiare per i programmatori di C, C++, Java e JavaScript.

F#

F# ha una sintassi semplice e richiede pochissimo codice per creare software. È un linguaggio open source che semplifica la scrittura di codice semplice, affidabile e ad alte prestazioni. Dispone inoltre di un sistema di regole di programmazione completo e di una libreria standard efficace per la creazione di software mission-critical, corretto, veloce e affidabile.

Visual Basic

Visual Basic è un linguaggio di programmazione orientato agli oggetti sviluppato da Microsoft. L'utilizzo di Visual Basic semplifica e velocizza la creazione di app .NET di sicurezza dei tipi. La sicurezza dei tipi è la misura con cui un linguaggio di programmazione evita o impedisce errori di codifica logica.

Linguaggi della CLI (Common Language Infrastructure)

Anche linguaggi come ClojureCLR, Eiffel, IronPython, PowerBuilder e molti altri funzionano sulla piattaforma .NET. Questo perché .NET implementa la CLI (Common Language Infrastructure). È possibile pensare alla CLI come a un modello per la creazione di linguaggi compatibili con .NET.

Cos'è il runtime .NET?

Il runtime .NET, chiamato anche CLR (Common Language Runtime), compila ed esegue programmi .NET su diversi sistemi operativi.

Compilazione just-in-time

Il CLR compila il codice mentre lo sviluppatore lo scrive. Durante la compilazione, il CLR converte il codice in CIL (Common Intermediate Language). Ad esempio, il codice scritto in C# ha sintassi e parole simili all'inglese. .NET compila o converte questo codice in CIL. Il codice CIL ha un aspetto diverso perché è un linguaggio di codice macchina di livello inferiore.

Esecuzione

Il runtime .NET gestisce l'esecuzione del codice CIL. CIL è compatibile con più piattaforme e qualsiasi sistema operativo può elaborarlo. La compatibilità multipiattaforma si riferisce alla capacità di un'applicazione di funzionare su più sistemi operativi diversi con modifiche minime. Ad esempio, un'applicazione in C# può essere eseguita su Windows, Linux o macOS senza modifiche al codice. Tale applicazione è chiamata applicazione multipiattaforma.

Cosa sono i framework del modello applicativo .NET?

I framework del modello applicativo sono una raccolta di strumenti e librerie per sviluppatori che supportano lo sviluppo rapido ed efficiente di progetti .NET. Esistono framework diversi per diversi tipi di applicazioni, come quelle elencate di seguito.

Applicazioni Web

Il framework ASP.NET estende la piattaforma per sviluppatori .NET specificamente per la creazione di applicazioni basate sul Web. Supporta tecnologie Web come REST API, HTML, CSS e JavaScript. Fornisce un database utente integrato con autenticazione a più fattori ed esterna. ASP.NET supporta protocolli di autenticazione standard del settore con un meccanismo di sicurezza integrato per proteggere le app .NET da attacchi informatici.

Applicazioni per dispositivi mobili

Puoi usare Xamarin/Mono per eseguire le app .NET su tutti i principali sistemi operativi mobili, inclusi iOS e Android. Xamarin include Xamarin.Forms, un framework di interfaccia utente mobile open source. Gli sviluppatori di .NET utilizzano Xamarin.forms per creare un'esperienza utente coerente su piattaforme mobili. Tutte le app .NET possono avere lo stesso aspetto, anche su dispositivi mobili diversi.

Applicazioni desktop

Puoi utilizzare Xamarin per lo sviluppo di applicazioni desktop. Inoltre, Universal Windows Platform estende lo sviluppo di applicazioni .NET per Windows 10. Windows Presentation Foundation e Windows Forms sono altri framework per la progettazione di interfacce utente su Windows.

Altre applicazioni

Con ML.NET, puoi sviluppare e integrare modelli di machine learning personalizzati nelle applicazioni .NET. Puoi utilizzare le librerie .NET IoT per sviluppare applicazioni su sensori e altri dispositivi intelligenti. Per tutte le soluzioni non disponibili nei framework, puoi trovare molte librerie di funzioni specifiche nel repository NuGet pubblico. Puoi utilizzare Nuget per creare, condividere e utilizzare molte librerie .NET per quasi tutti gli scopi.

In che modo AWS può aiutare gli sviluppatori di .NET?

Gli sviluppatori di .NET possono rendere le applicazioni più veloci utilizzando .NET su AWS.  AWS ha un servizio per ogni processo, quindi puoi creare rapidamente proof of concept senza doverti preoccupare della gestione dell'infrastruttura. Di seguito sono riportati alcuni esempi di servizi AWS per lo sviluppo di .NET:

  • AWS Elastic Beanstalk gestisce l'implementazione delle applicazioni e le attività operative.
  • Amazon EC2 fornisce capacità di elaborazione nel cloud sicura e ridimensionabile.
  • Amazon Aurora automatizza l'amministrazione dei database.

Gli sviluppatori di .NET possono anche utilizzare strumenti e librerie open source di AWS, ad esempio:

  • AWS SDK per .NET semplifica la creazione di applicazioni .NET da parte degli sviluppatori di Linux e Windows.
  • AWS Code Examples Repository consente di accelerare la comprensione di applicazioni che funzionano con i servizi AWS.
  • .NET Digital Library contiene un archivio di video, tutorial, blog e altre risorse per sviluppatori per .NET.

Con il rilascio di .NET 6, gli sviluppatori di .NET possono sfruttare ancora di più con Linux le prestazioni e i risparmi sui costi di AWS. Le applicazioni .NET 6 possono già utilizzare molti servizi AWS senza ulteriore lavoro. Questa guida descrive il supporto .NET 6 fornito dai servizi e dagli strumenti AWS.

Puoi iniziare a usare .NET su AWS completando la formazione su .NET su AWS, creando applicazioni .NET su AWS o avviando la tua prima applicazione .NET su AWS.

Fasi successive di .Net in AWS

Scopri ulteriori risorse correlate al prodotto
Ulteriori informazioni sui servizi di calcolo 
Registrati per creare un account gratuito

Ottieni accesso istantaneo al piano gratuito di AWS. 

Registrati 
Inizia subito nella console

Inizia subito a costruire con AWS nella Console di gestione AWS.

Accedi