JavaScript dla programistów z doświadczeniem w Backend

Kod: base-4BacendDevs
Kategoria: JavaScript - język
Forma: 50% wykłady / 50% warsztaty
Czas trwania: 3-5 dni
Grupa docelowa: developerzy
Logistyka: W siedzibie klienta lub w innym dowolnym miejscu.
Data i dokładny zakres do ustalenia podczas analizy przed-szkoleniowej.

Podejście do JS w sposób sprofilowany tak aby poznawać JS poprzez analogię oraz różnice do praktyk i wzorców znanych z backend.

Uczestnicy dzięki szkoleniu:

  • Będą doskonale rozumieli działanie języka JavaScript oraz jego różnice względem większości innych języków
  • Będą omijali pułapki, w które najczęściej wpadają początkujący JavaScriptowcy oraz będą znali dobre praktyki
  • Będą rozumieli architektury oraz nowoczesne podejścia do tworzenia aplikacji JavaScriptowych
  • Będą umieli wybrać właściwe narzędzia dla określonego projektu
  • Będą umieli zaprojektować duże, skalowalne aplikacje, wskazać ich wrażliwe punkty oraz je optymalizować
  • Będą mieli rozeznanie w narzędziach JavaScriptowych


  • Wyróżniki szkolenia

    • Zawiera wzorce i najlepsze praktyki
    • Nacisk na myślenie funkcyjne godnie z filozofią JS
    • Trener jest praktykiem z wieloletnim wcześniejszym doświadczeniem w backend

    Program Szkolenia

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

    1. Język JavaScript w ujęciu dla doświadczonych programistów backend
      1. Pułapki specyficznej składni
        1. Najczęściej napotykane błędy
        2. Funkcje: zakres leksykalny vs blokowy
        3. Koercja – rzutowanie typów
        4. OOP: prototypy vs klasy
        5. Asynchroniczne wykonywanie kodu
      2. Funkcje - kluczowy element języka
        1. Context (this)
        2. Hoisting
        3. Closures/domknięcia - mechanika, cele, korzyści
      3. Asynchroniczność
        1. 3 modele programowania: synchroniczny, asynchroniczny, współbieżny
        2. Synchroniczne oraz asynchroniczne callbacki
        3. Event Loop, Run to Completion Rule
        4. Race Conditions
        5. Patterns: Callbacks, Events, Promises, Coroutines, RxJS
      4. Standard ECMAScript6+ - najważniejsze elementy
        1. Rozszerzenia składni
        2. Moduły
        3. Generatory
    2. Architektura - analogie do znanych wzorców
      1. Style architektoniczne
        1. WebComponents, dyrektywy angularowe
        2. Nowoczesna architektura komponentowa
        3. Komunikacja poprzez eventy
        4. Sposoby zarządzania stanem
      2. Wzorce projektowe
        1. Dependency Injection
        2. Model-View-ViewModel
        3. Data binding (angular, knockout)
        4. Alternatywne implementacje warstwy modelu
        5. Modularność aplikacji
      3. Przegląd architektur frameworków/bibliotek JavaScriptowych
        1. jQuery
        2. AngularJS
        3. React / Redux
        4. RxJS
      4. Programowanie funkcyjne
        1. Podstawowe operatory
        2. Pure functions
        3. Data immutability
    3. Opcjonalne moduły
      1. Przeglądarki
        1. Zaawansowane użycie devtools
        2. Wydajność aplikacji - analiza, optymalizacja
        3. Wsparcie standardów, polyfills
      2. Node.js, automatyzacja, bundling
        1. Ekosystem współczesnych projektów JavaScriptowych
        2. npm
        3. grunt, gulp
        4. AMD: require.js
        5. CommonJS: browserify
        6. Webpack
        7. ES6: Babel
        8. Unit tests: karma
      3. TypeScript - statyczne typowanie w JavaScript
        1. Problemy jakie TS rozwiązuje, jakich nie rozwiązuje oraz jakie tworzy
        2. Podstawowe typy
        3. Type inference
        4. Duck typing
        5. Wsparcie narzędzi
        6. Specyficzne dla TypeScriptu wzorce projektowe
      4. Zaawansowane promisy
        1. Łańcuchowanie
        2. Obsługa błędów
        3. Zaawansowane operacje (all, race, any, some)
        4. Wzorce projektowe oparte o promisy
        5. Antywzorce
      5. Testowanie
        1. Unit
        2. E2E


    Pobierz program w formacie PDF

    Trenerzy

    Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.

    Materiały związane ze szkoleniem

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

    Zapytaj o szkolenie

    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ń


    Wyrażam zgodę na przetwarzania danych osobowych zgodnie z ustawą o ochronie danych osobowych w związku z wysłaniem zapytania przez formularz kontaktowy.

    Podanie danych jest dobrowolne ale niezbędne do przetworzenia zapytania. Zastałem/am poinformowany/na, że przysługuje mi prawo dostępu do swoich danych, możliwości ich poprawienia, żądania zaprzestania ich przetwarzania.

    Administratorem danych osobowych jest Bottega IT Minds, ul. Jana Sawy 2, 20-632 Lublin.


    Klauzula informacyjna