Programování

.NET 5: Co znamená sloučení .NET Framework a .NET Core

Strategie .NET společnosti Microsoft mohla být v poslední době trochu nejasná, se dvěma odlišnými směry vývoje ve známém .NET Framework a novém open-source .NET Core. Společná sada knihoven .NET Standard si klade za cíl spojit je a dát vývojářům jediný způsob, jak pracovat s jakoukoli z různých verzí .NET na všech jejich cílových platformách, od Windows po mobilní web. Ale to stále znamenalo, že musíte přemýšlet o tom, který runtime .NET použít: Core, Xamarin, Mono nebo Framework?

Představujeme .NET 5, budoucnost .NET

Na Build 2019 Microsoft představil své plány pro budoucnost .NET a oznámil, že dalším významným vydáním po .NET Core 3 bude jediná verze .NET s názvem .NET 5. Stavění na rychlém růstu refaktorovaného a oživeného .NET Společnost Core si klade za cíl, aby na .NET 5 fungovalo mnoho existujících rozhraní API a funkcí rozhraní .NET Framework 4.8, spolu s novými rozhraními API a službami. Sbližují se nejen knihovny základní třídy; Společnost Microsoft využívá příležitosti, aby spojila své různé kompilátory .NET, přičemž vyvíjí jak JIT .NET Core (just-in-time), tak i kompilační modely Mono.

Není to překvapivé rozhodnutí. Rozhraní .NET Framework nepostupovalo tak rychle jako .NET Core, zváženo starším kódem. To v kombinaci s rostoucím zaměřením společnosti Microsoft na vývoj napříč platformami zajistilo, že byl nevyhnutelný rozhodující přechod z téměř dvacet let starého Framework do novějšího Core. Vypadnutí Core z názvu je také logické. S přidanými rozhraními API od spuštění a podporou knihoven .NET Standard již .NET Core opravdu není omezeným refaktoringem jádra. Vzhledem k tomu, že .NET 5 signalizuje konec vývoje pro .NET Framework, je zjevně čas na nový název.

I tak to nebude změna přes noc. .NET Core 3 je stále dodáván a .NET 5 se dočkáme až na podzim roku 2020. Plánované datum dodání v listopadu 2020 nám dává téměř 18 měsíců na to, abychom mohli náš kód připravit. první polovina roku 2020.

Co se stane s .NET Framework?

Jedna věc, kterou Microsoft objasňuje: .NET Core 3 bude posledním vydáním pro port rozhraní API .NET Framework. V .NET 5 tedy nebudou žádná další rozhraní Framework API a některé starší technologie, jako jsou webové formuláře a Windows Communication Foundation, nebudou součástí nové platformy. Pokud chcete přejít z .NET Framework 4.8, budete muset najít alternativní podporované technologie. V současné době společnost Microsoft doporučuje, aby společnost Blazor nahradila webové formuláře a gRPC místo WCF. Jsou to rozumné alternativy, které vám poskytují podporu napříč platformami, která by nebyla k dispozici prostřednictvím starších technologií, a protože Blazor používá Web Assembly nebo nabízí ovládací prvky na straně serveru v ASP.NET, nyní podporuje mnohem novější a vyšší výkon technologie.

Rada společnosti Microsoft pro vývojáře je začít používat .NET Core 3 pro všechny nové aplikace, ale je důležité si uvědomit, že to není konec vašich aplikací .NET Framework. Microsoft se zavazuje k dlouhodobé podpoře rozhraní .NET Framework, takže pokud máte kód spuštěný v rozhraní .NET Framework 4.8, nebudete jej muset aktualizovat, dokud nebudete připraveni provést tento posun. Koneckonců, aktuálně dodává základní vývojářské nástroje, včetně Visual Studio, vytvořené pomocí .NET Framework. Dokonce i tehdy, s kompatibilitou základní třídy mezi většinou nového .NET a starým díky .NET Standard, by migrace neměla být bolestivá a dá vám příležitost spustit tento kód na mnoha dalších místech.

Jednoduše migrující kód však přijde o příležitost refaktorovat a redesignovat aplikace pro cloud a pro mikroslužby. .NET 5 se vyvíjí pro dnešní IT svět, přičemž na prvním místě je hybridní cloud a kontejnerové distribuované systémy, spíše než svět klient-server, který zrodil původní .NET koncem 90. let.

Meziplatformový běh pro svět napříč platformami

Sjednocením .NET Core, .NET Standard a Xamarin na jedné platformě si Microsoft klade za cíl převzít postavení na různých platformách. Váš kód (s některými funkcemi uživatelského rozhraní) bude možné spustit v systémech Windows, Linux, iOS, Android a dalších, s podporou mnoha různých tříd zařízení. Přidáním podpory .NET Core 3 pro pracovní plochu Windows existuje široká škála aplikací, které lze integrovat do .NET 5, zejména pokud využijete výhod run-anywhere ovládacích prvků UWP díky podpoře od .NET nástrojů třetích stran od Uno a ostatní.

Vzhledem k tomu, že implementace .NET jdou nad rámec .NET Core, stále bude místo pro knihovny .NET Standard. Společné knihovny usnadňují cílení na více verzí .NET ze stejného zdrojového kódu a veškerý váš kód .NET 5 bude používat .NET Standard, což zjednoduší přenesení kódu ze starších verzí .NET Core a z jiných implementací .NET, jako je například Mono nebo Xamarin.

Získání správných podnikových základů .NET

Jedním z aspektů oznámení .NET 5 je plán pravidelného vydání pro .NET. Uvedení .NET na roční kadenci s dvouletým vydáním dlouhodobé podpory by mělo zmírnit další tlak na vývojáře a přidat úroveň předvídatelnosti, která chyběla. S vědomím, že .NET 6 bude v roce 2021, po kterém bude následovat .NET 7 o rok později, a se čtyřletou podporou pro dlouhodobá vydání podpory usnadní plánování nových funkcí a životních cyklů aplikací. Umožní společnosti Microsoft a zbytku nadace .NET publikovat jasné cestovní mapy toho, co očekávat a kdy to očekávat.

Mimo ekosystém .NET existuje další příležitost pro Microsoft a jeho zaměření na předplatné vývojářských nástrojů. Se změněnými licenčními podmínkami společnosti Oracle pro Javu bude bezplatný podnikový běh pro open source atraktivní pro mnoho stávajících vývojových týmů Java. Že 18měsíční spuštění na spuštění .NET 5 lze považovat za čas trénovat své vývojáře v nových jazycích a nástrojích a plánovat reimplementaci aplikací v mikroslužbách .NET.

Dáme-li to dohromady, výsledkem bude cestovní mapa .NET vhodná pro podnikové vývojáře. Microsoft a .NET Foundation se zavázaly k pravidelným aktualizacím a jedinému meziplatformnímu modulu runtime, přičemž se stále starají o to, aby nebyly opuštěny starší aplikace .NET Framework. Dlouhodobá podpora by měla vývojovým týmům pomoci naplánovat životní cykly aplikací a vybrat, co a kdy upgradovat. Můžete začít s aktuálními náhledy .NET Core 3, připravenými na vydání 2020.