Szkolenie dostępne na zamówienie

Budowanie aplikacji w języku Elm

Jasne i przyjazne wprowadzenie do czysto funkcyjnego języka Elm i architektury Elm: alternatywy dla JavaScript, ze statycznym typowaniem, i zerową ilością błędów runtime

Czas trwania szkolenia:4 dni (32h)

Poziom zaawansowania:

Kod kursu:ELM/APP

elmfunctional-programmingelm-uispa

Szkolenie na zamówienie

  • Dostosowany program
  • Indywidualna wycena
  • Dowolny termin
Zapytanie o szkolenie

Budowanie aplikacji w języku Elm

Cele szkolenia

  • Poznanie języka Elm wraz ze standardowymi i rekomendowanymi bibliotekami, w kontekście zarówno teoretycznym, jak i praktycznym (budowa prostych i nisko-zaawansowanych aplikacji przeglądarkowych)


Dla kogo?

  • Programiści chcący poszerzyć swoje kompetencje o:

  • zrozumienie programowania funkcyjnego (które dalej można wdrożyć w innych językach, włączając w to JavaScript)

  • zapoznanie się z czysto funkcyjnym językiem, który choć dużo prostszy to zainspirowany jest językiem Haskell

  • umiejętność budowy bezpiecznych (as in „bug-free”) aplikacji przeglądarkowych


Zalety

  • Warsztatowy charakter zajęć

  • Teoretyczna i praktyczna wiedza dotycząca programowania funkcyjnego, którą dalej można aplikować do języków funkcyjnych (również backendowych), jak i języków z wbudowanymi elementami paradygmatu funkcyjnego (np. JavaScript, Python, Java)

  • Budowa kilku projektów/aplikacji

  • Ćwiczenia pomagające utrwalić omawiane koncepty

  • 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


Wymagania

  • Podstawowa umiejętność programowania w dowolnym języku


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

Program

Pobierz program w PDF

Wprowadzenie do Elm

  • Dlaczego Elm?

  • Elm, a JavaScript

  • Konfiguracja narzędzi

Wprowadzenie do programowania funkcyjnego

  • Czyste funkcje

  • Niezmienność danych

  • Funkcje wyższego rzędu oraz funkcje jako first class citizens

Podstawy języka Elm

  • Podstawowe typy danych

  • Inferencja typów

  • Custom (Algebraic) types, czyli własne typy danych

  • Alias typów

  • Moduły

  • Funkcje

  • Rekordy i listy

  • Operator pipeline

  • Kompozycja funkcji

Ćwiczenia

  • Stosowanie podstawowych konceptów FP w Elm

  • Pisanie prostego kodu w Elm używając typów, funkcji, i modułów

Bardziej zaawansowane koncepty programowania funkcyjnego

  • Currying

  • Partial application

  • (Tail) Recursion

Średnio-zaawansowany Elm

  • Architektura Elm (Model-Update-View)

  • Maybe, Result

  • Interoperacyjność z JavaScript

  • Enkoderki i dekoderki JSON

  • HTTP

  • Jak Elm radzi sobie z side-effects?

Ćwiczenia

  • Proste aplikacje w Elm

Podstawowe wzory

  • Czyste funkcje zamiast komponentów

  • Podział plików ze względu na ich funkcje w aplikacji

  • Przekazywanie rekordów jako parametrów funkcji

  • Unikanie type blindness poprzez pakowanie danych w unikatowe typy

  • Wczesne rozpakowanie typów Maybe i Result dla innych funkcji

  • Pewność, że niemożliwe stany aplikacji są niemożliwe

  • Parse, don't validate

  • Budowanie danych z wielu funkcji, czyli wzór budowniczego

Niebanalne użycie Elm

  • SPA

  • Elm-UI

Ćwiczenia

  • Stworzenie aplikacji SPA w Elm

Co dalej?

  • Jak utrzymywać aplikacje Elm

  • Refactoring

  • Unit i fuzz testing