Читать книгу Programowanie funkcyjne w języku C#. Jak pisać lepszy kod - Enrico Buonanno - Страница 20

1.2.3 Bardziej funkcyjna przyszłość dla języka C#?

Оглавление

Gdy na początku 2016 roku pisałem pierwszy szkic tego rozdziału, wersja C# 7 była dopiero w stadium początkowym i niezwykle interesujące było, że wszystkie funkcje, którym zespół pracujący nad językiem poświęcał duże zainteresowanie, były funkcjami związanymi zazwyczaj z językami funkcyjnymi. Obejmowały one, co następuje:

■ Rekordy (łatwe w użyciu typy niemutowalne).

■ Algebraiczne typy danych (duże wzmocnienie systemu typów).

■ Dopasowanie do wzorca (podobne do instrukcji switch, która dotyczy kształtu danych, a nie ich wartości).

■ Lepsza składnia dla krotek.

Z jednej strony, zawodem było to, że udało się wprowadzić tylko ten ostatni element. C# 7 obejmuje też ograniczoną implementację dopasowywania do wzorca, ale jest to bardzo ubogie w stosunku do tego, co w tym zakresie udostępniono w językach funkcyjnych. To generalnie nieadekwatny sposób używania dopasowywania wzorców przy funkcyjnym programowaniu (patrz punkt 10.2.4).

Z drugiej strony, zmiany te są nadal negocjowane jako wariant dla przyszłych wersji i wykonano pewną pracę nad poszczególnymi propozycjami. Oznacza to, że prawdopodobne jest pojawienie się rekordów i pełniejszej implementacji dopasowywania do wzorca w kolejnych wersjach C#. Język C# jest też nastawiony na kontynuowanie ewolucji jako język o wielu paradygmatach, z rosnącym komponentem funkcyjnym.

Ta książka da nam dobre podstawy, aby śledzić ewolucję języka i rynku. Pomoże też w dobrym zrozumieniu pojęć i motywacji leżących u podstaw przyszłych wersji języka.

Programowanie funkcyjne w języku C#. Jak pisać lepszy kod

Подняться наверх