.NET 2015: una panoramica sulle novità del framework

di Cristian Civera, in .NET 2015,

Il 2015 è un anno molto importante per Microsoft perché è caratterizzato dall'uscita di strumenti e software che si contraddisguono notevolmente rispetto al passato. Da una parte Windows 10 si propone come un sistema operativo unico per smartphone, tablet, desktop, IoT e Xbox, con uno store unico e correggendo alcuni errori fatti con Windows 8. Dall'altra la sezione di sviluppo Microsoft abbraccia il mondo open source rilasciando sorgenti di framework già esistenti e creandone di nuovi appoggiandosi alla comunità di sviluppatori. Anche Visual Studio cambia rotta e cerca di uscire dall'essere uno strumento ad uso esclusivo per tecnologie Microsoft, ma si presta a diventare, grazie alle sue ottime qualità di IDE, uno strumento multi tecnologia per cercare di diventare un punto di riferimento per lo sviluppo in generale.

Questo cambiamento è dovuto alla necessità di dover far fronte ad un mondo che evolve molto velocemente e richiede che anche il software evolva alla stessa velocità. Le soluzioni moderne necessitano di sviluppare e distribuire a ritmi molto rapidi, ed è sempre più necessario dover sviluppare su più piattaforme, inoltre l'open source si è dimostrato capace di arricchire e migliorare il software più di quanto sappia fare un mondo chiuso.

.NET 2015 è il frutto di tutto questo e contiene importanti scelte che in parte scartano un mondo ormai vecchio e non al passo con i tempi e pesante nell'approccio che ci costringe a pesanti migrazioni se vogliamo sfruttare le nuove potenzialità. È bene però chiarire cos'è .NET 2015, di cosa si compone e quali sono le principali novità di cui si compone. Questo articolo non vuole essere esaustivo su di esse e su ogni tecnologia, ma vuole dare indicazioni per capire la direzione della nuova Microsoft.

Composizione di .NET 2015

Per capire .NET 2015 dobbiamo guardare questa slide mostrata a BUILD 2015.

Da una parte abbiamo .NET Framework 4.6, il successore dell'attuale .NET Framework 4.5 (esattamente 4.5.2), basato ancora sul CLR 4 e contenente piccole migliorie, testimoniate dal piccolo cambiamento di versione. Sopra di esso troviamo i componenti classici che già utilizziamo oggi: WPF, per lo sviluppo di applicazioni desktop, Windows Forms, presente più che altro per retro compatibilità verso un mondo ancora vasto, e ASP.NET, presente in versione 4 (o meglio dire 4.6) e 5. La nuova versione del framework dedicato allo sviluppo web, segna un decisivo cambiamento che a dispetto di quanto sempre accaduto, contiene importanti breaking changes e non ci permette una semplice migrazione, a causa delle motivazioni indicate in precedenza e di cui parleremo maggiormente più avanti nell'articolo.

Proseguiamo nell'analizzare la figura: a fianco del .NET Framework 4.6 è presente .NET Core 5. La versione 5 sta ad indicare un maggiore cambiamento di versione rispetto al .NET Framework 4.6, da quale eredita tutte le API. Il nome Core invece indica che esso contiene tutta la BCL e le API indipendenti dalla piattaforma, a dispetto del .NET Framework che contiene anche API specifiche per Windows. Questo perché .NET Core 5 ha la particolarità di poter funzionare non solo su Windows, ma anche su MacOS X e Linux, grazie al runtime di Mono. .NET Core 5 dispone inoltre di un'ottimizzazione specifica per Windows, di nome .NET Native che sfrutta il compilatore e il runtime di VC++ per produrre eseguibili con linking statici altamente performanti e dal basso consumo di risorse, migliorando anche del 60% rispetto al normale jitting. .NET Core 5 viene sfruttato dal medesimo ASP.NET 5 disponibile con il .NET Framework 4.6, e viene sfruttato anche dalle Universal Windows Apps, in modalità più performante, grazie a .NET Native. Può essere sfruttato inoltre per la realizzazione di applicazioni console.

Entrambi i framework base citati sfruttano motori e librerie per supportare il runtime e per la compilazione o il supporto da parte degli strumenti di sviluppo. Il .NET Compiler Platform (Roslyn) è un nuovo strumento che offre un compiler as a service, in grano di supportare più linguaggi, di poterli convertire tra di loro, di analizzarne il codice, di fare valutazioni e di mettersi al servizio dei runtime o di Visual Studio.

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

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

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

Approfondimenti

Top Ten Articoli

Articoli via e-mail

Iscriviti alla nostra newsletter nuoviarticoli per ricevere via e-mail le notifiche!

In primo piano

I più letti di oggi

In evidenza

Misc