Kiedy generyk pomaga w projektowaniu funkcji?
Najpierw odpowiedz na głos lub w myślach, potem porównaj.
Odpowiedź
Generyk jest przydatny, gdy zachowuje znany związek między wejściem i wynikiem. Jeśli funkcja przetwarza tablicę użytkowników, chcę nadal wiedzieć, jaki typ powstaje po przetworzeniu. Dzięki temu edytor i kompilator mogą sprawdzić dalszy kod bez zgadywania.
Na przykład mapLimited<T, R> może przyjąć elementy typu T i funkcję zamieniającą je na R, a następnie zwrócić wyniki R. To czytelniejsze niż oddawanie wszystkiego jako unknown i sprawdzanie od nowa. Generyk nie powinien jednak udawać walidacji danych z sieci. Jeżeli typ wyniku API wybieram dowolnie, potrzebuję także parsera, który go potwierdzi.
Dlaczego to ważne: To praktyczne rozwinięcie B-P13, bez uczenia się skomplikowanych sztuczek typów.
Możliwe dopytania: Kiedy zwykły, konkretny typ jest prostszy i lepszy?
Jak poszło? Bądź szczery — „Jeszcze nie” dodaje pytanie do powtórki.
Zacznij od
- B-P01 · Czym jest Node.js i czym różni się od JavaScriptu w przeglądarce? — JavaScript, TypeScript i Node.js
- B-P04 · Co to jest Promise? — JavaScript, TypeScript i Node.js
- B-P10 · Co daje TypeScript i czego nie daje? — JavaScript, TypeScript i Node.js
Dalsza lektura
- TypeScript Handbook: Narrowing(otwiera się w nowej karcie)Docs; dostęp 22.10.2026. Zawężanie, discriminated unions i exhaustiveness.