szkolenie javascript zaawansowane
Warsztat | Zaawansowany JavaScript, Web Components

PROGRAM SZKOLENIA

  • Struktura aplikacji i podział na moduły

    • Modularna struktura
    • Wydzielanie komponentów, pajpów oraz dyrektyw do zew. modułów
    • Konfiguracja zew. modułu
    • Dynamiczne ładowanie modułów - lazy loading
    • Własna biblioteka modułów
      • przygotowanie paczki - ng-packagr
      • publikowanie biblioteki na npm (opcja)
      • import biblioteki lokalnie oraz przez npm
      • aktualizacja oraz wersjonowanie
  • Programowanie reaktywne - RxJs

    • Tworzenie strumieni
      • Observable
      • Subject
      • BehaviorSubject
      • ReplaySubject
    • Operatory
      • przetwarzanie: map, buffer, group, scan ...
      • filtrowanie: filter, throttling, skip, debounce ...
      • łączenie: zip, merge, combine latest ...
      • narzędzia: tap, delay, toPromise
    • Przydatne mechanizmy
      • Higher order observables
      • Cold and Hot observables
  • Komunikacja z serwerem

    • GraphQL playground - temat opcjonalny
      • Query, mutation, & subscription
      • Schema
      • Fragments
      • Variables
      • Input types, unions, interfaces
      • Introspective Queries
      • Apollo Client
      • Apollo-codegen
    • WebSocket
      • RxJs - webSocket
      • zdarzenia: open, close, message, send
  • Zarządzanie stanem aplikacji

    • Zasady architektury Redux
    • NgRx
      • immutable state
      • actions, reducers, selectors, entity, side effects
      • router actions
      • generowanie z użyciem schematics
  • Dynamiczne tworzenie formularzy

    • Plik opisujący formularz (JSON)
    • Dynamiczne tworzenie pól formularza - form builder
    • Nietypowe pola formularza - form API
    • Walidacja
    • Obsługa zdarzeń
  • Zaawansowane komponenty

    • Wydajność
      • Jak działa change detector
      • Strategie detekcji
      • Wykorzystanie zdarzenia ngDoCheck
    • Dynamiczne generowanie komponentów
      • Serwis ComponentFactoryResolver
      • ng-container oraz ngTemplateOutlet
  • Dyrektywy

    • Własne dyrektywy strukturalne i atrybutowe
    • Wykorzystanie serwisów w dyrektywach
      • IterableDiffers
      • ViewContainerRef
      • TemplateRef
    • Export dyrektywy
    • Komunikacja z komponentem
  • Progressive Web Apps (PWA)

    • JSON Manifest
    • Service Worker
    • Kontrolowanie wersji
  • Routing

    • Parametryzowanie routingu
    • Zagnieżdżanie routingu
    • Aktywacja/deaktywacja routingu - Guard, kontrola routingu
  • Angular Material Design

    • Nawigacja i podstawowy układ aplikacji
    • Kontrolki formularza
    • Generowanie z użyciem schematics
  • Zapis danych

    • IndexedDB
    • localStorage
  • Angular Elements - temat opcjonalny

    • Wprowadzenie do Web Components
    • Przetwarzanie Angular Component na (Native) Custom Element
    • Komunikacja z komponentem: input, output w aplikacji webowej
  • Dodatki

    • Jak aktualizować projekt
    • Debugging i profiling
    • Konfiguracja
      • zmienne środowiskowe
      • plik angular.json
      • wersja produkcyjna i deweloperska
      • browserslist

CEL SZKOLENIA

Założeniem szkolenia jest praktyczne zapoznanie się z nowościami standardu ECMAScript (6,7,8) oraz Web Components
Ponadto zostaną przedstawione rozwiązania, dla typowych problemów programistycznych - wzorce projektowe
Na szkoleniu poruszony zostaną również aspekty bezpieczeństwa aplikacji internetowych.

ADRESACI SZKOLENIA

Szkolenie JavaScript zaawansowane dedykowanie jest dla programistów znających dobrze min. jeden język programowania oraz posiadających podstawową wiedzę o JavaScript i HTML.

CZAS TRWANIA SZKOLENIA

Wersja minimalna 2 dni
Wersja rozszerzona 3 dni

Szkolenie ma charakter warsztatowy.

Materiały szkoleniowe mają formę elektroniczną.

Programy szkoleń można modyfikować lub łączyć tak aby dostosować szkolenie do własnych potrzeb. Jednak przed zamówieniem należy uzgodnić taką modyfikację.

W sali szkoleniowej potrzebne są (szkolenie w siedzibie klienta)

  • szybki internet
  • dobry rzutnik - najlepiej HDMI
  • flipchart - opcjonalnie
  • komfortowa przestrzeń dla każdego uczestnika
  • możliwość swobodnego podejścia (przez trenera) do każdego uczestnika szkolenia

Informacje dla uczestników szkolenia

  • Potrzebujesz szybkiego komputera np. i5 lub i7, SSD, min. 8GB RAM
  • Na komputerze zainstaluj najnowsze wersje
  • Zaopatrz się we wszystko, co może przyśpieszyć pracę np. myszkę czy drugi monitor.
  • Ze względu na warsztatowy charakter szkolenia bądź na czas
  • W czasie szkolenie zapomnij proszę o komórce i innych rozpraszaczach