Span T ed Entity Framework Core

Su .NET Core 2.1 è stato integrato un nuovo primitive type, chiamato Span T, che può operare sui dati anche senza allocation. Arrivate anche diverse nuove API che si focalizzano principalmente sul supporto alla crittografia, sulla compressione dei dati e sulla compatibilità con le nuove versioni di Windows. E' stato implementato inoltre un nuovo metodo per eseguire il deploy con tool come NuGet package.

Insieme ad ASP.NET Core 2.1 il team Microsoft ha rilasciato anche la nuova release di Entity Framework Core 2.1, l'object-relational mapping (ORM) framework open source per ADO.NET che dalla versione 6 è stato separatp dal .NET Framework diventando un progetto indipendente.

Container, deployment e prestazioni

.NET Core 2.1 rende più semplice la gestione dei progetti e della pubblicazione delle self-contained application. Le applicazioni distribuite tramite container sono ormai molto comuni, dunque è normale che i developer Microsoft abbiano posto particolare attenzione a questo settore, migliorando i tool di .NET Core appositamente dedicati.

In particolare .NET Core 2.1 dispone di un nuovo sistema per il deployment derivato direttamente dall'esperienza del team di developer con NPM global tool. Si può testare tale feature tramite la .NET Core console. Da questa release i tool saranno framework-dependent ed includeranno tutte le varie dipendenze NuGet, questo significa che le applicazioni sviluppate con .NET Core potranno essere eseguite nativamente sui sistemi supportati dal framework.

dotnet-core-21-build-times

Microsoft ha lavorato anche sul lato prestazioni, .NET Core 2.1 gode di un boost di performance durante la build delle applicazioni davvero notevole, anche grazie all'introduzione di vari long-running servers (VBCSCompiler, MSBuild worker processes e Razor server) al .NET Core SDK che contribuiscono allo snellimento delle operazioni di sviluppo più comuni.

HttpClient e compressione dati

Introdotto anche un nuovo HttpClientHandler chiamato SocketsHttpHandler, questo nuovo componente è un'implementazione in C# dell'HttpClient basata sul .NET socket e sul nuovo primitive type Span T. Non avendo dipendenze specifiche può essere utilizzato senza problemi su tutti i sistemi operativi supportati da .NET Core, garantendo le medesime performance ovunque. Per questo motivo è diventato l'implementazione di default per HttpClient.

.NET Core 2.1 ora può vantare il supporto a all'algoritmo di compressione Brotli che è attivamente supportato dai principali browser web e web server, oltre a diversi CDN (Content Delivery Networks).

SourceLink, compatibilità e aggiornamenti

Altra novità di questa release è SourceLink, un sistema che permette ai developer di eseguire il debugging del codice e dei binari distribuiti. Il Visual Studio debugger supporta già nativamente SourceLink, quindi Microsoft ha voluto chiudere il cerchio e consentire agli utenti di .NET Core di lavorare col medesimo debugger tool.

.NET Core 2.1 è una delle prime release ad essere distribuita anche tramite pacchetti Snap. Su Ubuntu, e le varie distro che supportano i pacchetti Snappy, è infatti possibile installare molto facilmente la nuova versione:

sudo snap install dotnet-sdk --candidate --classic
sudo snap install dotnet-runtime-21 --candidate

.NET Core 2.1 è una release LTS (Long-term Support) dunque sarà pienamente supportato per ben 3 anni. Nei prossimi 3 mesi .NET Core 2.1 sarà aggiornato con nuove funzionalità, dopo questo periodo i developer di Redmond si focalizzeranno sulle patch di sicurezza, sulla reliability e sull'aggiunta del supporto alle nuove piattaforme software come ad esempio Ubuntu 18.10.

Via .NET Core

CommentaDi' la tua

Il tuo indirizzo email non sarà mostrato pubblicamente. I campi obbligatori sono contrassegnati da *