fbpx
goodfirms LOGO Created with Sketch.








    TypeScript 4.9 – pierwsza wersja beta, nowy operator

    14
    grudzień
    2022
    5 minut czytania
    Udostępnij

    Na finalną wersję TypeScript 5.0 poczekać trzeba będzie najprawdopodobniej do 14 marca, ale wczesna beta do testowania powinna pojawić się już pod koniec stycznia. Będący nadzbiorem języka JavaScript TypeScript wprowadza do niego mechanizmy, które charakterystyczne są dla obiektowych języków programowania. Najważniejszym z nich jest bez wątpienia statyczne typowanie zmiennych. Z tego właśnie powodu w wersji beta TypeScript 4.9 dodano nowy operator satisfies wraz z kilkoma innymi usprawnianiami. Czym jeszcze wyróżnia się TypeScript 4.9? Na czym dokładnie polega statyczne typowanie? Dlaczego kompilacje TypeScript tak często powstają w edytorze VSC? Na wszystkie te i wiele innych pytań odpowiadamy poniżej.  

    Czym jest statyczne typowanie?

    Statyczne typowanie zmiennych wykorzystywane jest przede wszystkim w językach takich jak C, C#, C++, Java, Kotlin, Pascal, Rust, Scala i TypeScript. Mechanizm ten określa, w jaki sposób przypisywane są typy zmiennych w trakcie kompilacji kodu programu. We wspomnianych wyżej językach typ obiektu określić trzeba poprzez deklaracje zmiennych lub zastosowanie polimorfizmów bądź interferencji typów. Warto zwrócić tu uwagę, iż JavaScript bazuje na dynamicznym typowaniu zmiennych, które sprawia, iż da się tam zadeklarować obiekt bez konieczności podawania typu i wartości. Główną wadą takiego rozwiązania jest to, iż błędy widoczne są dopiero po uruchomieniu programu. Statyczne typowanie pozwala wykrywać potencjalne problemy na etapie pisania oraz kompilowania kodu. W języku takim jak TypeScript kompilator jest w stanie określić typ zmiennych na podstawie wartości znanych zmiennych lub zadeklarowanych wcześniej typów.

    Jak działa nowy operator satisfies w TypeScript?

    Nowy operator satisfies to jedna z najczęściej omawianych funkcjonalności wersji beta TypeScript 4.9. Do tej pory zwolennicy TypeScript musieli korzystać z nieco okrężnej drogi, jaką jest manualne walidowanie metodą if poprawności rzutowanych typów. Dzięki satisfies typ walidowany jest w momencie przypisania, co pozwala zredukować liczbę nieintencjonalnych błędów. Dzięki kilku pomniejszym usprawnieniom nowy TypeScript wykrywa literówki, podkreśla niektóre problemy oraz wyświetla podpowiedzi. Mając na uwadze, iż TypeScript jest jednym z wielu projektów Microsoft, łatwo zrozumieć można, dlaczego posiada on tak dobre wsparcie w darmowym edytorze VSC. Oprogramowanie autorstwa Microsoft o nazwie Visual Code Studio można bezpłatnie pobrać na Windowsa, Linuxa oraz macOS. W kontekście TypeScript VSC cenione jest za funkcje takie jak kolorowanie składni kodu, podkreślanie błędów czy automatyczne uzupełnianie tekstu IntelliSense. Wśród zalet wymienia się także często możliwość zarządzania wersjami kodu za pośrednictwem jednego z najpopularniejszych systemów kontroli wersji, jakim jest Git.

    Co nowego dodano jeszcze w TypeScript 4.9?

    W kontekście nowości w TypeScript 4.9 wyróżnić warto jeszcze szereg przemyślanych i długo wyczekiwanych usprawnień. Jednym z nich jest możliwość automatycznego generowania metod typu get i set. Zamiast tracić czas na ręczne tworzenie setek getterów i setterów dla wykorzystywanych w kodzie obiektów (np. typu String) wystarczy teraz przy deklaracji obiektu wewnątrz klasy poprzedzić ją słowem accessor. Z perspektywy istotnych zmian wypada wspomnieć też o poprawionej funkcjonalności bezpośrednich porównań z wartością NaN (ang. Not a Number). Nowy TypeScript 4.9 usprawnia również kwestie usuwania niewykorzystywanych w kodzie programu importów (np. zewnętrznych bibliotek itp.).Beta TypeScript 4.9 – Podsumowanie

    TypeScript od samego początku był zaprojektowany z myślą o optymalizacji i zmniejszeniu liczby nieumyślnych błędów kodu. W wersji beta 4.9 TypeScript zyskał wiele usprawnień, które w praktyce ułatwiają odczuwalnie proces refaktoryzacji kodu. Dzięki nowemu operatorowi satisfies łatwo uniknąć można problemów z rzutowaniem typów zmiennych już na etapie kompilacji kodu. Testowanie i naprawianie błędów jest znacznie bardziej czasochłonne i wymagające, jeśli wykrywa się je, dopiero gdy program się uruchomi. Z tego też powodu TypeScript opiera się na statycznym typowaniu zmiennych. Warto zwrócić też uwagę, iż każdy znający przynajmniej podstawy JavaScriptu developer jest w stanie łatwo nauczyć się TypeScript. Z tego względu karierę programisty TypeScript rozważyć może również niemalże każdy znający jakkolwiek programowanie zorientowane obiektowo developer. Przy wybieraniu odpowiedniego edytora kodu do TypeScript zdecydowanie opłaca się przetestować bezpłatne VSC od Microsoft. Program ten posiada wsparcie nie tylko dla TypeScript, ale również języków takich jak JavaScript, C++, C#, Java, PHP, Dart, Dockerfile, HTML, JSON, Python czy CSS.

    Wiktor Sobczyk

    Bezpłatna konsultacja

    Powiedz nam czego potrzebujesz, a nasi eksperci Powiedzą Ci jak to zrobić, ile to kosztuje i na kiedy będzie gotowe.

    Inne wpisy na blogu

    23
    czerwiec
    2020
    Do czego można porównać front end development? Zastanów się, co widzisz, gdy spacerujesz i patrzysz na miejskie krajobrazy? Prawdopodobnie najpierw zauważasz lśniące fronty sklepowe, stworzone, by wciągnąć Cię do środka. Wybierasz najbardziej atrakcyjne, otwierasz drzwi i wchodzisz. To samo dzieje się w sieci. Surfując po Internecie w poszukiwaniu rzeczy, których potrzebujesz, znajdujesz najbardziej wciągającą stronę,…
    tagi: #Technologia
    czytaj artykuł
    Biznes oparty na dostarczaniu technologii nie może skupiać się wyłącznie na backendzie, czyli sposobie działania i wydajności aplikacji. Równie istotne jest doświadczenie użytkownika, na które wpływa strona wizualna programu, jego intuicyjność czy czytelność. Nie można tego pominąć przy tworzeniu aplikacji mobilnych czy aplikacji webowych. Jeśli chodzi o testowanie frontendu poradnik przygotowany przez nasz software house…
    tagi: #Technologia
    czytaj artykuł
    Jak możemy Ci pomóc?
    Porozmawiaj z nami!








      Kamil
      Head of Business Development
      Kliknij, aby podejrzeć