TypeScript wygrał. Oto co nam to dało.
Debata dobiegła końca. TypeScript wygrał. Nowe projekty używają go domyślnie.
Pierwotną obietnicą było wyłapywanie literówek, zanim zepsują one Twój kod. Ale prawdziwa wartość jest znacznie większa.
Typy służą jako dokumentacja, która nigdy nie staje się nieaktualna. Sygnatura funkcji mówi Ci dokładnie, co należy wysłać i co otrzymasz z powrotem. Jeśli dodasz nową opcję do listy, kompilator zmusi Cię do zaktualizowania każdej części kodu. Komentarz po prostu by tam wisiał i wprowadzał Cię w błąd.
Refaktoryzacja staje się bezpieczna. W starym kodzie JavaScript zmiana nazwy pola przypomina hazard. Przeszukujesz ciągi znaków i liczysz na szczęście. W TypeScript zmieniasz typ, a kompilator generuje listę zadań zawierającą każdą uszkodzoną linię. Refaktoryzacja nie jest już przerażająca. To po prostu zadanie do wykonania.
Typy sprawiają również, że asystenci AI stają się lepsi.
Jeśli poprosisz AI o edycję nietypowanego JavaScriptu, będzie musiało zgadywać strukturę. Jeśli używasz TypeScript, typ jest specyfikacją. AI wie, co jest dozwolone. Jeśli AI popełni błąd, kompilator natychmiast go wyłapie. Nie doświadczysz awarii na produkcji o 2 nad ranem. Zobaczysz czerwoną linię w swoim edytorze.
Typy Cię nie spowalniają. W świecie AI przyspieszają Cię. Działają jak barierki ochronne, dzięki którym możesz ufać wygenerowanemu kodowi.
Twórz typy z intencją:
• Używaj unii zamiast wielu wartości boolean. Status taki jak "loading" | "error" | "ready" jest lepszy niż trzy flagi, które mogą być ze sobą sprzeczne. • Nadawaj nazwy typom domenowym. Użyj "type Cents = number", aby wyrazić swoją intencję. • Unikaj "any". Zamiast tego używaj "unknown" i zawężaj typ. "Any" tworzy dziurę w Twojej siatce bezpieczeństwa. • Pozwól działać wnioskowaniu. Nie musisz etykietować wszystkiego. Określaj granice, takie jak sygnatury funkcji, i pozwól reszcie płynąć.
TypeScript zrobił coś więcej niż tylko wyłapywanie literówek. Stworzył wymuszalne kontrakty. Kontrakty te umożliwiają bezstresową refaktoryzację i niezawodne narzędzia AI.
Zaczęliśmy używać typów, aby zatrzymać błędy. Kontynuujemy ich używanie, ponieważ stanowią fundament dla wszystkiego innego.
Źródło: https://dev.to/parsajiravand/typescript-won-heres-what-that-actually-bought-us-12m8
