Programowanie w TypeScript - Helion
TÅ‚umaczenie: Natalia Chounlamany-Turalska
ISBN: 9788301211226
stron: 350, Format: ebook
Data wydania: 2020-06-05
Księgarnia: Helion
Cena książki: 67,20 zł (poprzednio: 82,96 zł)
Oszczędzasz: 19% (-15,76 zł)
Każdy programista dynamicznie typowanego języka wie, jak trudno jest skalować go do wielu wierszy kodu. To dlatego w firmach Facebook, Google i Microsoft wymyślono warstwy do stopniowego wprowadzania statycznej kontroli typów w dynamicznie typowanym kodzie JavaScript i Python. Ta praktyczna książka opisuje, co wyróżnia TypeScript na tle innych warstw typów oraz pokazuje, że dzięki zaawansowanemu systemowi typowania statycznego programowanie staje się przyjemnością. Jeśli jesteś średniozaawansowanym programistą JavaScript, autor Boris Cherny nauczy Cię, jak opanować język TypeScript. Zrozumiesz, w jaki sposób TypeScript pomaga w eliminowaniu błędów i usprawnia współpracę wielu programistów nad tym samym kodem. W tej książce: Zaczniesz od podstaw: Poznasz różne typy i operatory TypeScript, dowiadując się, do czego służą i jak ich używać. Poznasz bardziej zaawansowane zagadnienia: Zrozumiesz zaawansowany system typów TypeScript m.in. jak bezpiecznie obsługiwać błędy i budować programy asynchroniczne. Zdobędziesz praktyczne umiejętności: Dowiesz się jak, używać języka TypeScript w połączeniu z ulubionymi frameworkami front-end i back-end, migrować istniejący projekt JavaScript do TypeScripta i uruchomić aplikację TypeScript w środowisku produkcyjnym.
Osoby które kupowały "Programowanie w TypeScript", wybierały także:
- React Native. Kurs video. Zostań programistą aplikacji mobilnych 169,00 zł, (50,70 zł -70%)
- React.js i Node.js. Kurs video. Budowanie serwisu w oparciu o popularne biblioteki języka JavaScript 129,00 zł, (38,70 zł -70%)
- Testowanie aplikacji w React.js. Kurs video. Praca z biblioteką Jest.js 69,00 zł, (20,70 zł -70%)
- JavaScript. Kurs video. Programowanie funkcyjne i reaktywne 99,00 zł, (29,70 zł -70%)
- D3.js w akcji 67,42 zł, (20,90 zł -69%)
Spis treści
Programowanie w TypeScript eBook -- spis treści
- Okładka
- Strona tytułowa
- Strona redakcyjna
- Przedmowa
- 1. Wprowadzenie
- 2. TypeScript: Ogólny obraz
- Kompilator
- System typów
- JavaScript versus TypeScript
- Przygotowanie edytora kodu
- tsconfig.json
- tslint.json
- index.ts
- Ćwiczenia
- 3. Cała prawda o typach
- Omawianie typów
- Abecadło typów
- any
- unknown
- boolean
- number
- bigint
- string
- symbol
- Obiekty
- Przerwa: aliasy, unie i przecięcia typów
- Tablice
- Krotki
- null, undefined, void oraz never
- enum
- Podsumowanie
- Ćwiczenia
- 4. Funkcje
- Deklarowanie i wywoływanie funkcji
- Parametry opcjonalne i domyślne
- Parametry reszty
- call, apply oraz bind
- Typ zmiennej this
- Funkcje generatora
- Iteratory
- Sygnatury wywołań
- Wnioskowanie typów z kontekstu
- Przeciążone typy funkcji
- Polimorfizm
- Kiedy wiązane są typy ogólne?
- Gdzie można deklarować typy ogólne?
- Wnioskowanie typu ogólnego
- Aliasy typów ogólnych
- Ograniczony polimorfizm
- Domyślne typy ogólne
- Programowanie sterowane typami
- Podsumowanie
- Ćwiczenia
- Deklarowanie i wywoływanie funkcji
- 5. Klasy i interfejsy
- Klasy i dziedziczenie
- super
- Wykorzystywanie this jako zwracanego typu
- Interfejsy
- Scalanie deklaracji
- Implementacje
- Implementowanie interfejsów a rozszerzanie klas abstrakcyjnych
- Klasy sÄ… typowane strukturalnie
- Klasy deklarują zarówno wartości, jak i typy
- Polimorfizm
- Domieszki
- Dekoratory
- Symulowanie klas typu final
- Wzorce projektowe
- Wzorzec Fabryka
- Wzorzec Budowniczy
- Podsumowanie
- Ćwiczenia
- 6. Typy zaawansowane
- Relacje między typami
- Typy podrzędne i nadrzędne
- Wariancja
- Zasady przypisywalności
- Rozszerzanie typów
- Uściślanie
- Kompletność
- Zaawansowane typy obiektów
- Operatory na typach obiektów
- Typ Record
- Typy mapowane
- Wzorzec obiektu towarzyszÄ…cego
- Zaawansowane typy funkcji
- Poprawianie wnioskowania typów dla krotek
- Dozory typów definiowane przez użytkownika
- Typy warunkowe
- Rozdzielne warunki
- SÅ‚owo kluczowe infer
- Wbudowane typy warunkowe
- Drogi ewakuacyjne
- Asercje typów
- Asercje wykluczajÄ…ce null
- Asercje pewnego przypisania
- Symulowanie typów nominalnych
- Bezpieczne rozszerzanie prototypu
- Podsumowanie
- Ćwiczenia
- Relacje między typami
- 7. Obsługa błędów
- Zwracanie wartości null
- Zgłaszanie wyjątków
- Zwracanie wyjątków
- Typ Option
- Podsumowanie
- Ćwiczenia
- 8. Programowanie asynchroniczne, współbieżność i równoległość
- Pętla zdarzeń JavaScriptu
- Stosowanie wywołań zwrotnych
- Przywracanie porządku przy użyciu obietnic
- async i await
- Strumienie asynchroniczne
- Emitery zdarzeń
- Wielowątkowość z zachowaniem bezpieczeństwa typów
- W przeglądarce: przy użyciu Web Workers
- W NodeJS: z procesami podrzędnymi
- Podsumowanie
- Ćwiczenia
- 9. Frameworki front-end i back-end
- Frameworki front-end
- React
- Angular
- API zapewniające bezpieczeństwo typów
- Frameworki back-end
- Podsumowanie
- Frameworki front-end
- 10. Przestrzenie nazw. Moduły
- Krótka historia modułów JavaScriptu
- import, eksport
- Dynamiczne importy
- Wykorzystywanie kodu CommonJS i AMD
- Tryb modułu a tryb skryptu
- Przestrzenie nazw
- Kolizje
- Wynik kompilacji
- Scalanie deklaracji
- Podsumowanie
- Ćwiczenie
- 11. Współdziałanie z językiem JavaScript
- Deklaracje typów
- OtaczajÄ…ce deklaracje zmiennych
- Otaczające deklaracje typów
- Otaczające deklaracje modułów
- Stopniowa migracja z JavaScriptu do TypeScriptu
- Krok 1: Dodanie TSC
- Krok 2a: Włączenie sprawdzania typów dla JavaScriptu (opcjonalnie)
- Krok 2b: Dodanie adnotacji JSDoc (opcjonalne)
- Krok 3: Zmienianie nazw plików na .ts
- Krok 4: Włączenie ścisłej kontroli typów
- Wyszukiwanie typów dla JavaScriptu
- Wykorzystywanie zewnętrznego kodu JavaScriptu
- JavaScript, który zawiera deklaracje typów
- JavaScript, który ma deklaracje typów w DefinitelyTyped
- JavaScript, który nie ma deklaracji typów na DefinitelyTyped
- Podsumowanie
- Deklaracje typów
- 12. Budowanie i uruchamianie TypeScriptu
- Budowanie projektu TypeScriptu
- Układ projektu
- Artefakty
- Ustawianie środowiska docelowego kompilacji
- Włączanie map źródeł
- Odwołania projektów
- Monitorowanie błędów
- Wykonywanie TypeScriptu na serwerze
- Wykonywanie TypeScriptu w przeglÄ…darce
- Publikowanie kodu TypeScriptu w NPM
- Dyrektywy z trzema ukośnikami
- Dyrektywa types
- Dyrektywa amd-module
- Podsumowanie
- Budowanie projektu TypeScriptu
- 13. Wnioski
- A. Operatory na typach
- B. Typy pomocnicze
- C. Deklaracje w zakresie
- D. Wskazówki do pisania plików deklaracji dla zewnętrznych modułów JavaScriptu
- E. Dyrektywy z potrójnym ukośnikiem
- F. Flagi kompilatora TSC podnoszące bezpieczeństwo
- G. TSX
- O autorze
- Przypisy