TypeScript Wyjaśniony: Dlaczego go potrzebujesz
Piszesz w JavaScript każdego dnia. Wszystko działa poprawnie. Więc dlaczego warto przejść na TypeScript?
Raz spędziłem dwa dni na naprawianiu błędu na produkcji. To była zwykła literówka w nazwie właściwości. TypeScript wykryłby ten błąd w milisekundach.
TypeScript to JavaScript z typami. Microsoft stworzył go w 2012 roku. Duże zespoły w Google i Slacku go używają.
TypeScript nie zastępuje JavaScriptu. Jest kompilowany do zwykłego JavaScriptu. Przeglądarki i Node.js uruchamiają wynikowe pliki JS. TypeScript pomaga pisać lepszy kod, zanim go uruchomisz.
Porównaj te dwa przykłady:
JavaScript:
function greetUser(name) {
return "Hello, " + name.toUpperCase();
}
greetUser(42); // To spowoduje błąd aplikacji w czasie wykonywania (runtime).
TypeScript:
function greetUser(name: string): string {
return "Hello, " + name.toUpperCase();
}
greetUser(42); // To natychmiast wyświetli błąd w edytorze.
Dlaczego warto używać TypeScript?
- Wczesne wykrywanie błędów: Znajdujesz błędy podczas pisania, a nie wtedy, gdy znajdą je użytkownicy.
- Lepsze autouzupełnianie: Twój edytor zna strukturę danych i sugeruje właściwości.
- Żywa dokumentacja: Widzisz dokładnie, jakich danych potrzebuje funkcja, patrząc na jej sygnaturę.
- Bezpieczna refaktoryzacja: Jeśli zmienisz nazwę właściwości, TypeScript wskaże każde miejsce w kodzie, które przestało działać.
Jak zacząć:
Zainstaluj go przez npm:
npm install -g typescriptUtwórz plik o nazwie hello.ts:
const message: string = "Hello, TypeScript!";console.log(message);Skompiluj go:
tsc hello.ts
To tworzy plik hello.js. Typy znikają w pliku wyjściowym, pozostawiając czysty JavaScript do uruchomienia w przeglądarce.
Typowe błędy, których należy unikać:
- Używanie "any" do wszystkiego: To pozbawia Cię korzyści płynących z TypeScript. Bądź precyzyjny.
- Ignorowanie błędów: Nie ukrywaj błędów za pomocą komentarzy. Napraw przyczynę problemu.
- Nadmierne typowanie: TypeScript jest inteligentny. Często potrafi odgadnąć typ poprzez wnioskowanie (inference).
TypeScript ma niewielką krzywą uczenia się. Opłaca się to, gdy Twoje projekty rosną.