.NET Core 2.0 på MS Build

Under några dagar i maj var vi på MS Build i Seattle, en konferens som snabbt säljer slut. Det var fullspäckade dagar och vi vill dela med oss av lite av det vi tog med oss därifrån.

MS Build 2017

Vad är .NET Core?

.NET Core är ett nytt ramverk från Microsoft och version 1 släpptes i juni 2016. Den stora skillnaden mot .NET Framework är att det är open source och har stöd för Windows, Linux, Unix och MacOS. Målet med .NET Core är att skapa ett öppet och flexibelt ramverk som ger fler valmöjligheter av språk, plattform och användningsområden. Man ska kunna återanvända stora delar av sin kodbas, oavsett hur och var man kör applikationen. .NET Core implementerar specifikationen .NET Standard, vilket gör det kompatibelt med andra ramverk som t ex .NET Framework, Xamarin och Mono. .NET Core är ett försök att ena det spretiga landskapet av olika produkter i .NET-familjen, och underlätta för både folk som är nya och erfarna.

Vad är nytt med 2.0?

.NET Core 2.0 är en stor uppgradering från version 1, och släpps tillsammans med den nya specifikationen .NET Standard 2.0. Resultatet är över 20 000 nya APIer jämfört med .NET Standard 1. Det innebär ett bredare stöd för existerande .NET Framework, NuGet-paket och bibliotek från 3:e part som implementerar .NET Standard. Det blir lättare att förena olika delar och bygga precis de applikationer man vill.

Som en del av att bredda användningen av .NET Core så har fler Linux distros givits stöd, och även möjlighet att utveckla mot Linux som om det vore ett enda operativsystem. Detta är önskvärt om man inte vill begränsa sig till en specifik distro. Nu finns det även stöd för Visual Basic.

ASP.NET Core 2.0

Som en följd av en ny .NET Standard så kommer även en ny version av ASP.NET Core som implementerar denna standard. ASP.NET Core 2.0 kommer med en rad förbättringar. Kommandostödet är bredare och bättre, och integrationen mot Azure är utbyggd för att underlätta skapande av appar, loggning och diagnostisering. Man har lagt till Razor Pages, som är ett lätt sätt att skapa enstaka sidor på utan en hel MVC-struktur. Det bygger dock på existerande MVC så att man kan expandera efter behov.

Sedan så har det skett ett antal prestandaförbättringar och justeringar. Projektfilen .csproj har blivit mindre och förenklad. Bättre templates för nya projekt, för att minska på det manuella konfigurerandet. Applikationer startar snabbare, och har även mindre storlek vid deploy. Detta tack vare en runtime store där standardbibliotek hamnar vid installation av .NET Core. Det sparar både på diskutrymme och minnesanvändning hos servern. Speciellt värdefullt är det om samma server kör många applikationer.

Vi ser fram emot lanseringarna under hösten och fler nyheter.