.NET Conf oraz .NET 5

Wprowadzenie

W ubiegłym tygodniu (10-12 listopada) odbyła się wirtualna konferencja .NET Conf, podczas której swoją oficjalną premierę miał nowy .NET 5. Odbyło się bardzo dużo różnych prezentacji, w których myślę, że każdy znajdzie coś ciekawego dla siebie. Natomiast w tym wpisie chciałem zebrać ciekawsze rzeczy związane z premierą .NET 5, C# 9.0, ale również z samą konferencją.

.NET 5

Głównym elementem konferencji oczywiście była premiera nowego .NET. Nowa wersja jest o tyle przełomowa, że unifikuje istniejące do tej pory wersje .NET. Starego .NET Framework, nowego .NET Core, mono oraz Xamarin. Od teraz ma być tylko jeden .NET 5 (przy czym Xamarin ma korzystać dopiero z .NET 6). Głównym celem jest, abyśmy we wszystkich możliwych miejscach używali tego samego runtime, sdk, narzędzi.

Na przykład Blazor w wersji WebAssembly będzie korzystał z .NET 5 zamiast z mono, jak to było wcześniej.

Sama idea stojąca za .NET 5 jest bardzo fajna i potrzebna. Już teraz zauważyłem, że szczególnie nowe osoby mają problem z rozróżnieniem różnych wersji .NET. A jeden właściwy .NET dużo uprości z czasem.

Przy czym niektóre elementy dalej będę miały w nazwie Core. Na przykład Entity Framework Core 5 – aby nie myliło się to z Entity Framework 5 z .NET Framework.

Nowe wersje .NET będą wychodziły co roku w listopadzie. Czyli za rok będziemy mieli .NET 6. W 2022 .NET 7 i tak dalej. Przy czym wersje parzyste będą wersjami LTS (Long Term Support) z trzyletnim wsparciem. Natomiast wsparcie dla wersji nieparzystych będzie jeszcze przez 3 miesiące od publikacji kolejnej wersji parzystej. Na przykład wsparcie dla .NET 5 będzie do lutego 2022 (listopad 2021 z .NET 6 + 3 miesiące).

Premiera .NET 5 była również okazją do świętowania 20 lat istnienia .NET. Podczas keynote Scott Guthrie opowiedział trochę jak wyglądała praca nad początkami ASP.NET i ile jest prawdy w tym, że kod powstał w samolocie. Warto to sobie przesłuchać 🙂

Darmowy kurs Visual Studio

Pracując z setkami programistów, zauważyłem, że większość osób nie pracuje efektywnie w Visual Studio. W skrajnych przypadkach korzystali z kopiowania z wykorzystaniem menu Edit. Wiem, że to dziwne, ale naprawdę niektórzy tak pracują. Dlatego postanowiłem stworzyć kurs Visual Studio – aby pomóc koleżankom i kolegom w efektywniejszej pracy.

Przygotowałem 30 lekcji e-mail, w których pokażę Ci, w jaki sposób pracować efektywniej i szybciej w Visual Studio. Poznasz dodatki, bez których nie wyobrażam sobie pracy w tym IDE.

Po więcej informacji zapraszam na dedykowaną stronę kursu: Darmowy Kurs Visual Studio.

Quiz C#

Ostatnio przygotowałem również quiz C#, w którym możesz sprawdzić swoją wiedzę. Podejmiesz wyzwanie?

Co nowego w .NET 5?

Nowy .NET to również nowe wersje języków. Mamy przede wszystkim C# 9 oraz kolejną wersję języka F#. Pojawiły się również zmiany w Visual Basic, ale z racji tego, że nie używam tego języka, to je pominę. O zmianach w samym C# przygotuję dedykowany wpis, który pojawi się w następnym tygodniu.

Kolejną nowością jest możliwość zbudowania całej aplikacji do jednego pliku. Co głównie może się przydać w przypadku aplikacji desktopowych. Co prawda w .NET Core 3.0 była już taka możliwość, ale w .NET 5 została ona usprawniona. Wcześniej tak naprawdę aplikacja była spakowana do jednego pliku i podczas uruchomienia była wypakowywana do folderu tymczasowego i uruchamiana. W .NET 5 wykonuje się to już z jego jednego pliku.

Dodatkowo mamy możliwość zawarcia runtime dla .NET, dzięki czemu użytkownik nie będzie musiał go wcześniej instalować. Wszystko będzie w jednym pliku. Oczywiście wpłynie to na rozmiar skompilowanej aplikacji. W wersji preview jest funkcjonalność przycinania assembly do tylko tych używanych, więc z czasem powinno dać się zoptymalizować wielkość aplikacji.

W .NET 5 wrócił również mechanizm ClickOnce, który umożliwia dystrybucję aplikacji desktopowych. Okazało się, że dużo osób chciało go wykorzystywać w swoich aplikacjach i Microsoft go dodał.

Kolejną grupą zmian w .NET 5 są dalsze usprawnienie wydajności, co widać na przykład w podbiciu wyników w testach przeprowadzanych przez TechEmpower. Gdzie w stosunku do .NET Core 3.1 wynik w teście Plaintext wzrósł o 38%, Json o 42%, a w Fortunes o 20%. Co zapewne przełoży się na szybkość działania naszych aplikacji.

Zmian większych lub mniejszych w .NET 5 jest więcej. Po więcej szczegółów odsyłam do dokumentacji – https://docs.microsoft.com/pl-pl/dotnet/core/dotnet-five.

Czego nie ma w .NET 5?

Microsoft pracując nad unifikacją .NET postanowił, że kilka rzeczy nie przeniesie do nowego .NET. Są to głównie rzeczy, których lata świetności minęły jakiś czas temu, jak na przykład ASP.NET WebForms.

Tabelka poniżej zawiera te rzeczy wraz z nowszymi odpowiednikami.

TechnologiaAlternatywa
AppDomainsAssemblyLoadContext
Remoting-named pipes
-gRPC
WebFormsBlazor
WCF Server-gRPC
-CoreWCF (open source)
WFCoreWF (open source)

Visual Studio 2019 16.8

Przy okazji premiery .NET 5 pojawił się również nowy update do Visual Studio 2019. W nim znajdziemy przede wszystkim wsparcie dla .NET 5, który jest już automatycznie instalowanych i dostępny.

Dodatkowo pojawiły się również inne usprawnienia, szczególnie w obsłudze gita w samym Visual Studio. Tutaj muszę się przyznać, że do tej pory jakoś nie używałem gita w samym Visual Studio. Wspomnienia z TFSa jakoś mnie odstraszają, ale może warto spróbować. Masz jakieś doświadczenia?

Kolejne zmiany to od .NET 5 do SDK dodane są analizatory Roslyn, które są automatycznie uruchamiane dla projektów .NET 5 i nowszych. Visual Studio zaczęło wyświetlać nazwy parametrów w wywołaniach metod. W pracy z XAMLem pojawiło się narzędzie, które uławia znajdowanie problemów z błędnym bindowaniem (np. literówka w nazwie właściwości).

.NET Conf

Gorąco zachęcam do przejrzenia listy nagrań z .NET Conf (https://channel9.msdn.com/Events/dotnetConf/2020), na pewno znajdziesz coś ciekawego dla siebie. Szczególnie zachęcam do obejrzenie nagrania z Keynote – https://channel9.msdn.com/Events/dotnetConf/2020/Keynote-Welcome-to-NET-5

Przy okazji .NET Conf został opublikowany darmowy numer Code Magazine, który w całości poświęcony jest .NET 5 i tematom wokół. Jeśli wolisz wersję do czytania niż oglądanie nagrań to miłego czytania – https://www.codemag.com/Magazine/Issue/DotNet5.

Podsumowanie

To byłoby na tyle, jeśli chodzi o podsumowanie zmian w .NET 5 oraz samej konferencji .NET Conf w moim wydaniu. Jeśli znalazłaś/znalazłeś coś ciekawego, co pominąłem, to podziel się tym w komentarzu 🙂

W najbliższym czasie na blogu pojawi się więcej bardziej szczegółowych artykułów związanych nowościami w .NET 5. Dlatego zachęcam do subskrypcji newslettera, abyś nie przegapiła/przegapił nowych wpisów.

Za tydzień na pierwszy ogień pójdą zamiany w C# 9.

Szkolenie C# i .NET 5

Szkolenie C# i .NET 5

Zainteresował Ciebie ten temat? A może chcesz więcej? Jak tak to zapraszam na moje autorskie szkolenie o C# oraz .NET.

6 thoughts on “.NET Conf oraz .NET 5

  • Pingback: dotnetomaniak.pl
  • Cześć! Ostatni tydzień na pewno przyniósł dużo interesujących rzeczy! Podobno w każdym zespole jest już programista, który próbuje wcisnąć wszystkie nowinki! 🙂 W moim jestem to ja!
    Co do używania git’a przez VS to też jestem zrażony po TFS’ie, ale na pewno spróbuję!
    Jak chodzi o samą konferencję to najbardziej zaciekawił mnie project Tye, do którego walkthrough napisałem na swoim blogu. Wydaje się super, jak nie miałeś okazji wypróbować to sprawdź sam!
    Pozdrawiam!

  • Używam gita w vs na codzien i nie wyobrażam sobie innej metody pracy ! Oczywiście nie wszystko da się zrobić ale commit, stash, branch i inne podstawowe działają świetnie. Ostatnio pojawił się również amend. Szczególnie wygodne jest mergowanie i rozwiązywanie konfliktów oraz review wprowadzonych zmian przed commitem.

  • Hej, dzięki za artykuł i super streszczenie nowości 🙂 niestety nie próbowałam jeszcze korzystania z gita w VS, ale brzmi kusząco, więc na pewno spróbuję i wtedy podzielę się wrażeniami.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.