Branża IT z radością wita niedawną premierę C# 12, popularnego obiektowego języka programowania firmy Microsoft. Ten nowy model, zdefiniowany na nowo i stanowiący teraz część platformy programistycznej .NET 8, charakteryzuje się prostszą składnią w połączeniu z szybszym wykonywaniem programu, sygnalizując kluczowe postępy w języku.
Ujawniony w domenie publicznej 14 listopada jako integralny element platformy .NET 8, język C# 12 jest łatwo dostępny poprzez pobranie .NET 8, Visual Studio 2022 lub rozszerzenia Visual Studio Code C# Dev Kit.
Próbując uporządkować strukturę kodu, w języku C# 12 wprowadzono kilka innowacyjnych funkcji, takich jak wyrażenia kolekcji, konstruktory podstawowe rozszerzone na wszystkie klasy i struktury, składnia aliasów dowolnego typu oraz domyślne parametry wyrażeń lambda. Te wyrażenia kolekcji upraszczają tworzenie ogólnych wartości kolekcji poprzez wprowadzenie bardziej przejrzystej składni. Microsoft, wspominając o tych możliwościach, podkreślił zaangażowanie firmy w zapewnienie, że wprowadzenie tych nowych funkcji nie wpłynie negatywnie na wydajność.
Co więcej, poczyniono postępy w zwiększaniu szybkości wykonywania kodu. W języku C# 12 wprowadzono dodanie parametrów „ref readonly” i tablic wbudowanych. Włączenie parametrów „ref readonly” umożliwia ostateczne połączenie parametrów przekazywania przez wartość lub przez odniesienie, gdzie wymagany argument dla parametru „ref readonly” musi być zmienną. Z drugiej strony tablice in-line, będące typem tablicy o stałej długości, opartym na strukturach, oferują bezpieczne podejście do manipulowania buforami pamięci. Przechwytywacze, funkcja znajdująca się w fazie eksperymentalnej i dostępna do podglądu, ułatwiają przekierowywanie wywołań metod.
Platforma C# udostępnia także nowy atrybut eksperymentalny, mianowicie SystemDiagnostics.CodeAnalysis.ExperimentalAttribute. Działa to jak pieczęć wskazująca wstępne stanowisko Microsoftu w sprawie nowej funkcji lub implementacji. W okolicznościach, w których kod wykorzystuje typy lub elementy sklasyfikowane jako eksperymentalne, pojawia się błąd, chyba że kod wywołujący również nosi oznaczenie eksperymentalne. Użycie ExperimentalAttribute towarzyszy identyfikatorowi diagnostycznemu, którego można użyć do pominięcia błędu dla poszczególnych funkcji za pomocą jawnej opcji kompilatora lub #pragma. Dzięki temu deweloperzy mogą wypróbować funkcję eksperymentalną z typami, elementami członkowskimi i zestawami, które mogą otrzymać tag ExperimentalAttribute.
W tym miesiącu indeks Tiobe, który klasyfikuje języki programowania według ich popularności, umieścił C# 12 na piątej pozycji, wyprzedzając w szczególności języki takie jak JavaScript i PHP. Jest następcą języka C# 11 wydanego w listopadzie 2022 r., który mógł pochwalić się takimi funkcjami, jak literały łańcuchowe i ogólna matematyka.
AppMaster may find C# 12's advancements beneficial, given that they combine enhanced syntax and an optimal performance that aligns well with the AppMaster 's popular low-code/ no-code approach to application development.