Warsztaty: Angular, TypeScript, RxJS, NGRX

Warsztat ekspercki to coś więcej niż szkolenie. To praca w kontekście konkretnych problemów.

Tytuł: Warsztaty: Angular, TypeScript, RxJS, NGRX
Kod: ang-workshop
Kategoria: Angular
Forma: 30% wykłady / 70% warsztaty
Czas trwania: 3 dni
Odbiorcy: architekci, developerzy
Zapisy: Indywidualne zamówienie i dopasowanie dla grupy.
Logistyka: W siedzibie klienta lub w innym dowolnym miejscu.

Szkolenie jest kompleksowym warsztatem, który ma na celu doprowadzenie do świadomego wykorzystania z technologii angular/ngrx. W trakcie szkolenia będziemy pracować nad wymaganiami jednej spójnej aplikacji oraz wykonywać kilka pobocznych ćwiczeń. Pełny program trwa 5 dni.

W zależności od potrzeb grupy możemy modyfikować zakres szkolenia tak aby dopasować do mniejszej ilości dni.

Wyróżniki warsztatu

  • zrozumienie i spójne połączenie filozofii reduxa oraz strumieni reaktywnych
  • przykłady o złożoności odpowiadającej realnym problemom
  • dobre praktyki oraz rozwiązania często spotykanych problemów

Program Warsztatu eksperckiego

Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.

  1. TypeScript
    1. Types
      1. Type overview
      2. Bottom and Top types
      3. Enums, String literals, Tuples
      4. Unions, Intersections, Index types
      5. Function types
      6. Generic Types
      7. Mapped Types
      8. Conditional Types
    2. TypeScript Classes
      1. Interfaces
      2. Classes
      3. Mixins
      4. Decorators
      5. OOP: abstraction, polymorphism, inheritance, encapsulation
    3. Advanced Concepts:
      1. Covariance vs Contravariance
      2. Structural vs Nominal
  2. Angular
    1. Architecture
      1. Overview
      2. Building blocks
    2. Components
      1. Responsibilities
      2. Custom components definitions
      3. Built-in directives
      4. Lifecycle hooks
      5. Binding types: property, event, two-way
      6. Cross components communication
      7. Inputs, outputs
      8. Pure Components vs Containers (aka Dumb vs Smart)
      9. Forms: template-driven vs reactive
    3. Services
      1. Responsibilities
      2. Built in services
      3. Custom services definition
      4. Stateless vs stateful services
    4. Modules
      1. In depth definition: declarations, exports, imports, providers
      2. Designing custom Modules
      3. "Components" modules
      4. "Services" modules
      5. "Mixed" modules
    5. Dependency Injection
      1. Injectors
      2. Providers
      3. Hierarchical injectors
    6. Pipes
      1. Built-in
      2. Custom pipes
    7. Routing and Navigation
      1. Router config
      2. Router navigation: declarative and imperative
      3. Router guards
      4. Modules loading: lazy vs eager
    8. Unit Testing
      1. Components
      2. Services
      3. Pipes
  3. RxJS
    1. Reactive programming paradigm
    2. Overview: Observable streams, Operators, Observers, Subscriptions, Subjects
    3. In depth
      1. Observable streams
      2. stream Operators
      3. stream Observers
      4. stream life cycle
      5. stream Subscriptions
      6. data flow
    4. Defining custom RxJS building blocks (exercises)
      1. streams
      2. operators
      3. subscription
      4. observers
    5. How to work with RxJS built-ins (exercises)
      1. stream factory functions
      2. built in operators
    6. Combining multiple streams
      1. in depth comparison of built-in operators and factory functions
      2. real world examples and exercises
    7. Higher Order Observables (HOO)
      1. definition
      2. how to flatten HOO
      3. how to use them effectively
      4. real world examples and exercises
    8. Subjects
      1. unicasted vs multicasted Observables
      2. managing Subject state and behaviour
      3. built-in Subjects comparison
  4. ngrx, Redux
    1. When should I use it?
    2. ngrx/Redux architecture overview
    3. In depth analysis
      1. Store
      2. State
      3. Selectors
      4. Actions, Action Types
      5. Reducers
      6. Effects
    4. Modeling ngrx/Redux State
      1. design principles
      2. normalizing State shape
      3. composing Reducers
      4. composing selectors
      5. modeling State shape
    5. Real world examples and exercises
    6. Unit Testing
      1. Reducers
      2. Actions and Action Creators
      3. Effects


Pobierz program w formacie PDF

Trenerzy

Poznaj ekspertów, którzy mogą poprowadzić Twój Warsztat.

Materiały związane z warsztatem

Idea renesansowej pracowni - Bottegi zakłada nieustanną pracę jej członków i dzielenie się jej wynikami.

  • Looking for the Holy Grail of Mobile Web Performance
    KATEGORIE: JS i Front-end

    W świecie mobilnym Istnieje przeświadczenie, że jedynie aplikacje natywne są w stanie sprostać oczekiwaniom użytkowników. Wraz z pojawieniem się Progresywnych Aplikacji Webowych, które mają przenieść na platformę webową wiele cech zarezerwowanych dotąd tylko dla rozwiązań natywnych, oczekiwania dotyczące wydajności są silniejsze niż kiedykolwiek wcześniej. Czy Web jest w stanie im sprostać?

    Autor Bottega:

    Adam Bar

    Powiązane szkolenia dedykowane:

    (zobacz wszystkie powiązane...)

    Architektura Oprogramowania dla Developerów Frontend

    Powiązane usługi:

    Audyty architektury

    Audyty architektury

  • JSON taki albo owaki... czyli kontrolowanie struktur z JSON Schema
    KATEGORIE: JS i Front-end

    Slides

    JSON jest najpopularniejszym formatem definiowania/wymiany danych w sieci. Jest elastyczny niczym XML oraz zwięzły, jak to tylko możliwe. Nie mniej, rozwiązłość strukturalna JSONów powoduje utratę kontroli nad tym, jakie dane są przechowywane. Jeśli chcesz kontrolować, co może być przechowywane w formacie JSON, zerknijmy na JSON Schema.

    Autor Bottega:

    Tomasz Ducin

    Powiązane szkolenia dedykowane:

    (zobacz wszystkie powiązane...)

    Architektura Oprogramowania dla Developerów Frontend

    Powiązane usługi:

    Audyty architektury

    Audyty architektury

  • A Ty co zrobisz bez frameworka
    KATEGORIE: JS i Front-end

    Podczas tej prezentacji poznamy lit-html – bibliotekę, która w prosty sposób abstrahuje zawiłości operacji na DOM-ie – oraz jej kuzyna lit-element, dzięki któremu Web Componenty są dziś na wyciągnięcie ręki. Sprawdzimy, jak wiele można mieć za tak niewiele i zastanowimy się, czy lit-html może stanowić alternatywę dla frameworków.

    Autor Bottega:

    Adam Bar

    Powiązane szkolenia dedykowane:

    (zobacz wszystkie powiązane...)

    Architektura Oprogramowania dla Developerów Frontend

    Powiązane usługi:

    Audyty architektury

    Audyty architektury

  • ng-enterprise
    KATEGORIE: Angular

    Slides

    Click... and here it is. Our AngularJS application has been deployed to 120 Scandinavian banks, starting to replace an old legacy system. It took us over 1 year to reach production and we learned some lessons you'll never read in any tutorial.

    Click... tech-part. How would you deal with data binding and cross-component communication in a huge system? What does a directive represent in an enterprise-scale application? How to make 2 architectures, the legacy and angular, co-exist? And, damn, the backend is down again!

    Click... business-part. So all these people are Java developers...? Guys, are you really sure, that this latest JS buzzword is our biggest concern at the moment? By the way - did Angular 2 make our AngularJS interface a legacy app already? And does anyone know if the backend is up anyway?

    I'll share my experience of doing something really amazing, yet difficult, having Angular playing the lead role in crazy financial sector!

Zamów warsztat

Imię i nazwisko:
Firma:
E-mail:
Nr tel:
Temat:
Wiadomość:

Jeżeli preferujesz osobisty kontakt to zawsze możesz zadzwonić.

Iwona Sobótka

Koordynatorka szkoleń


Twoje dane osobowe przetwarzamy, aby udzielić odpowiedzi na Twoje pytanie. Administratorem Twoich danych osobowych jest Bottega It Minds Sławomir Sobótka. Przysługuje Ci prawo wniesienia sprzeciwu wobec przetwarzania, prawo dostępu do danych, prawo żądania ich sprostowania, usunięcia lub ograniczenia ich przetwarzania. Szczegółowe informacje dotyczące przetwarzania Twoich danych osobowych znajdują się TUTAJ.