Maciej Olanicki
Maciej OlanickiRedakcja Bulldogjob

Przydatna nowość dla każdego .NET Developera

Sprawdź, jakie usprawnienia przygotował Microsoft dla programistów .NET.
17.02.20233 min
Przydatna nowość dla każdego .NET Developera

.NET to od lat oczko w głowie Microsoftu i centrum całego developerskiego ekosystemu tej korporacji. Nic więc dziwnego, że programiści .NET często otrzymują przydatne aktualizacje tak samej platformy, jak i zintegrowanego środowiska programistycznego Visual Studio. Microsoft właśnie ogłosił kolejną nowość, która może okazać się bardzo przydatna w codziennej praktyce.

Asystent aktualizacji .NET

Chodzi o asystenta aktualizacji .NET dostarczanego w postaci rozszerzenia dla Visual Studio. W ten sposób Microsoft chce zachęcić wszystkich tych, którzy budowali swoje aplikacje jeszcze z użyciem .NET Framework i .NET Core do migracji na nowsze, zunifikowane wersje platformy. Do wyboru jest .NET 6. które stanowi wydanie o wydłużonym okresie wsparcia oraz wydany w listopadzie zeszłego roku .NET 7 o standardowym wsparciu. Bieżący harmonogram prac nad .NET zakłada wydanie wersji LTS co 3 lata oraz wersji standardowych co rok. 

Dzięki publikacji rozszerzenia Microsoft chce ułatwić, zautomatyzować migrowanie na nowe wersje platformy, co dotychczas – jak przyznają sami przedstawiciele firmy – było uciążliwym procesem, zwłaszcza w przypadku migracji z .NET Framework. Asystent w postaci rozszerzenia ma być następcą dotychczasowych narzędzi, Upgrade Assistant CLI i Microsoft Project Migrations, i zunifikować i uprościć proces. Nie obyło się jednak bez pewnych ograniczeń, z którymi jednak Microsoft obiecuje sprawnie się uporać.

Kompatybilność i typy migracji

Już dziś dzięki asystentowi można migrować wszystkie projekty, które obsługiwał wspomniany Upgrade Assistant CLI, czyli ASP.NET, biblioteki klas czy aplikacje WPF i WinForms. Zabrakło natomiast obsługi mostków, np. przenoszenia projektów wykorzystujących Xamarin do nowego .NET MAUI, UWP do WinUI oraz WCD do WCF Core. Tajemnicą poliszynela jest więc, że nowy asystent w postaci rozszerzenia to w dużej mierze po prostu GUI na dostępne dotychczas narzędzie obsługiwane z poziomu wiersza poleceń.

Asystent wprowadza trzy typy migracji. W zależności od charakterystyki projektu zalecany jest konkretny rodzaj aktualizacji – z tabelą prezentującą poszczególne kombinacje można zapoznać się na stronach Microsoftu. Pierwszy rodzaj to aktualizacja in-place, w ramach której projekt zostanie przeniesiony na nowe wersje .NET w całości i automatycznie. Już dziś można w ten sposób dokonać migracji bibliotek klas, Windows Forms czy ASP.NET na .NET Core. i .NET Framework.

Drugi rodzaj migracji to migracja side-by-side, gdzie asystent utworzy kopię projektu i to ją będzie przenosił, a oryginalny projekt nie będzie w żaden sposób modyfikowany. Side-by-side można już aktualizować m.in. projekty WinForms czy WPF na .NET Framework. Ostatni rodzaj to side-by-side incremental, który wykorzystuje usprawnione mechanizmy znane z Microsoft Project Migrations – utworzona zostanie kopia, której część wywołań będzie obsługiwana przez .NET 6/7, a część przez .NET Framework. Ta opcja zalecana jest dla aplikacji ASP.NET.

Ułatwiona migracja

Nowe rozszerzenie Upgrade Assistant można już znaleźć w sklepie z dodatkami do Visual Studio. Po instalacji w menu kontekstowym wyświetlanym po prawokliku na projekt pojawi się nowa pozycja Upgrade. Wystarczy przejść przez kreator, gdzie wskazujemy docelową wersję .NET oraz właśnie rodzaj migracji oraz zaznaczyć komponenty, które mają zostać poddane migracji, aby asystent automatycznie (przynajmniej w teorii i części scenariuszy) dokonał reszty.

<p>Loading...</p>