JavaScript zaawansowane programowanie
Czas trwania szkolenia:3 dni (24h)
Kod kursu:JS/ADV
Poziom zaawansowania:
O szkoleniu JavaScript zaawansowane programowanie
W cenie otrzymasz:
- Materiały szkoleniowe
- Certyfikat ukończenia szkolenia
- W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Dla kogo?
- Programiści JavaScript, chcący zwiększyć efektywność pracy, poszerzyć posiadane umiejętności i poznać kompleksowo jeden z najważniejszych języków programowania
Wymagania
- Praktyczna znajomość podstaw JavaScript
Zalety
- Szkolenie ma charakter warsztatowy - duża ilość przykładów i życiowych ćwiczeń pozwalających na efektywne opanowanie materiału
- Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
- Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką
- Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how
Cele szkolenia
- Gruntowne wprowadzenie do składni i najważniejszych koncepcji jednego z najpopularniejszych języków programowania
- Pokazanie istotnych elementów SDK oraz najważniejszych zmian na poziomie języka
- Przedstawienie obowiązujących konwencji i dobrych praktyk programistycznych
- Zapoznanie z istniejącym ekosystemem i dostępnymi narzędziami deweloperskimi
Program
Bezpieczne i wydajne programowanie w JavaScript
- Specyfikacja/standard języka
- Poprawne i efektywne ładowanie skryptów
- Debugowanie kodu w przeglądarce
- Praca w trybie strict
- Prawidłowe deklarowanie i użycie zmiennych oraz stałych
- Porównywanie i bezpieczna konwersja typów
- Funkcje, domknięcia oraz ich zastosowanie w codziennej pracy
- Kontekst wykonania, zasięg zmiennych i znaczenie referencji this
- Programowanie obiektowe z wykorzystaniem podejścia prototypowego
- Mix-ins jako alternatywa dla klasycznego dziedziczenia
- Obsługa wyjątków
Nowoczesny JavaScript (nowości od ES6/ES2015 w górę)
- Transpilacja kodu i kompatybilność między przeglądarkami
- Arrow functions
- Parametry funkcji (wartości domyślne, spread, varargs)
- Interpolacja tekstu oraz szablony
- OOP - deklaracja klas i ich składników, computed properties, dziedziczenie, elementy statyczne, getters/setters, kontrola dostępu
- Destrukcja (obiekty, tablice, parametry funkcji)
- Nullish coalescing
- Praca z modułami
- Symbole
- Genratory i iteratory
- Kolekcje
- Podsumowanie istotnych nowości i planowanych zmian
Asynchroniczność
- Callbacks
- Promises
- Async/await
- Wprowadzenie do RxJS
Programowanie w stylu funkcyjnym
- Czyste funkcje
- Niezmienność
- Transparentność referencyjna
- Rekurencja
- Funkcje wyższego rzędu
- Pattern matching
- Kompozycja, currying i częściowa aplikacja funkcji
- Memoization
- Algebraic Data Types
- Wprowadzenie do koncepcji Type classes - Functors, Applicatives, Monads, Traversables
- Zastosowanie popularnych typów monad: Maybe, Either, Validation, Reader
- Efekty uboczne i interakcja ze środowiskiem zewnętrznym