Introduzione ad ASP.NET 5

di , in ASP.NET 5,

Lo scorso novembre, dal palco della conferenza Connect(); di New York, ScottGuthrie annunciava il rilascio di una nuova edizione del framework, open-source e corredata da una SDK in grado di funzionare anche su Mac OSX e Linux. Si è subito percepito che il cambiamento sarebbe stato epocale, soprattutto perché ideologico, oltre che tecnologico. Questa volta, le novità non riguardano solo ASP.NET ma le fondamenta stesse del framework, ad iniziare dal compilatore e dal runtime.

ASP.NET 5, attualmente in preview, è una tecnologia ideale per realizzare applicazioniweb moderne, estremamente ottimizzate e modulari. L'intero stack è stato riprogettato per essere più snello e componibile, così da garantire un avvio più rapido delle applicazioni e un consumo di risorse contenuto. Sia che il nostro server di produzione si trovi on-premise o nel cloud, ora può sopportare una densità più elevata di applicazioni, rendendo più fruttuosi i nostri investimenti.

Premesse interessanti che non riguardano solo gli sviluppatori ASP.NET di lungo corso. Microsoft si apre audacemente ad pubblico nuovo ed esigente, che vuole mantenere un controllo preciso sull'applicazione e sulle sue prestazioni.

Siamo finalmente liberi di sviluppare con gli strumenti che preferiamo, sulla nostra piattaforma preferita. Benvenuti ad ASP.NET 5.

ASP.NET 5 può funzionare su due edizioni del .NET Framework

Il rinnovamento di ASP.NET passa anche per la reinterpretazione del .NET Framework stesso, che ora si presenta in due edizioni.

  • Il .NET Core 5, una versione molto più snella del framework che conosciamo, che è stata resa open-source (repository GitHub), ed è liberamente utilizzabile con licenza MIT sia su Windows che su Linux o Mac. L'obiettivo è consentire alla community di contribuire positivamente al rapido sviluppo del framework e alla sua diffusione su un maggior numero di piattaforme. La qualità del prodotto è comunque garantita da Microsoft che resta alla guida del progetto ed assicura che solo i contributi di qualità siano integrati nel prodotto finale.

  • Il .NET Framework 4.6, che continua ad essere un'installazione per Windows Vista/Server 2008 o superiore per una assoluta retrocompatibilità con le applicazioni esistenti. I cambiamenti apportati ad ASP.NET non devono intimorirci perché le applicazioni ASP.NET 5 possono continuare a funzionare nel modo tradizionale con questa edizione “classica” del .NET Framework, che presenta alcune novità anche per gli sviluppatori ASP.NET WebForms, WPF e WinForms.

Edizioni del framework

Il nuovo .NET Core 5: open source e multipiattaforma

Il riflettore è ovviamente puntato sul nuovo .NET Core 5, che ci offre opportunità di sviluppo e di deploy su Windows, Mac e Linux. Contiene tutto il necessario allo sviluppo, alla compilazione e all'hosting di un'applicazione ASP.NET – un intero stack in soli 11MB. Coloro che sviluppano un'applicazione ASP.NET 5 per il nuovo .NET Core 5, scelgono di avvalersi di questi vantaggi:

  • Modularità. Un'applicazione ASP.NET 5 scritta per il .NET Core 5, di base, offre soltanto di una pipeline HTTP OWIN-compliant nuda e cruda, da usare direttamente quando vogliamo rispondere al client nella maniera più rapida possibile. ASP.NET 5 diventa quindi estremamente concorrenziale anche dal punto di vista delle prestazioni grezze. Ogni singola funzionalità va referenziata da un pacchetto NuGet ed aggiunta alla pipeline come middleware e questo ci mette in condizione di scegliere il giusto compromesso tra prestazioni e funzionalità offerte.

  • Portabilità. Microsoft distribuisce e supporta ufficialmente le build per Mac OSX e Linux del .NET Core 5. La nostra applicazione può funzionare ovunque, e ciò consente a molti sviluppatori di collaborare indipendentemente dalla piattaforma scelta.

  • Consumo di memoria contenuto. Il .NET Core 5 non ha dipendenze da System.Web e perciò determina un avvio più rapido dell'applicazione, con un minor impatto sulla memoria RAM del server.

  • Pronto per il cloud. I modelli di programmazione per i servizi di caching, sessione e configurazione sono idonei ad essere usati anche nel cloud. La nostra applicazione può in qualsiasi momento spostarsi da un server on-premise ed iniziare a scalare orizzontalmente nel cloud, senza che siano richieste modifiche al codice.

  • Agilità nel deployment. Il .NET Core 5 si distribuisce insieme all'applicazione. Non dobbiamo più attendere che gli amministratori del server aggiornino la versione del .NET Framework. Se vogliamo usare l'ultimissima versione rilasciata, dobbiamo semplicemente aggiornare le dipendenze e ripubblicare la nostra applicazione. Nello stesso server possono convivere fianco a fianco applicazioni che utilizzano versioni diverse del .NET Core.

Un Core Framework di soli 11MB... cosa c'è dentro?

Il .NET Core 5, seppur di dimensione ridotta, offre comunque il supporto a funzionalità di uso comune come i generics, il modello asincrono basato sui Task, l'HttpClient, e così via.

L'implementazione della base class library, così come di ogni altra classe cardine dello svilluppo di applicazioni web come l'HttpContext, è stata riprogettata e resa indipendente da System.Web (e perciò da IIS). Sebbene la nuova implementazione ricalchi la nomenclatura di quella precedente, l'Intellisense di Visual Studio 2015 evidenzierà le eventuali discrepanze tra i membri delle classi del .NET Framework 4.6 e le corrispettive appartenenti al .NET Core 5.

Discrepanze tra membri del .NET Framework 4.6 e .NET Core 5

La compattezza di questa edizione del .NET Framework, ci suggerisce che ogni funzionalità vada aggiunta come pacchetto NuGet. Ad oggi, non tutti i pacchetti disponibili supportano il .NET Core 5,quindi dovremo verificare che tale supporto sia presente dalla relativa pagina su nuget.org.

Supporto al .NET Core 5 di un pacchetto NuGet

Allo stato attuale, ASP.NET Web Forms non supporta .NET Core 5. L'unico modo di sviluppare questo tipo di applicazioni con ASP.NET 5 è quello di rivolgersi al .NET Framework 4.6.

3 pagine in totale: 1 2 3
Contenuti dell'articolo

Commenti

Visualizza/aggiungi commenti

Introduzione ad ASP.NET 5 1010 7
| Condividi su: Twitter, Facebook, LinkedIn, Google+

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti