Programowanie funkcyjne w języku PureScript
Czas trwania szkolenia:3 dni (24h)
Kod kursu:PURE/FN
Poziom zaawansowania:
O szkoleniu Programowanie funkcyjne w języku PureScript
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 chcący tworzyć aplikacje fullstack z użyciem podejścia funkcyjnego
- Programiści chcący zwiększyć efektywność pracy, poszerzyć posiadane umiejętności i poznać język PureScript
Wymagania
- Podstawowa umiejętność programowania w dowolnym języku
Zalety
- Warsztatowy charakter zajęć - nauka przez praktykę
- Zwrócenie szczególnej uwagi na obowiązujące konwencje oraz dobre praktyki
- 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
- Przyswojenie składni języka PureScript, obowiązujących konwencji kodowania oraz istotnych idiomów programistycznych
- Kompleksowe wprowadzenie do funkcyjnego paradygmatu programowania
- Poznanie najważniejszych elementów SDK
- Zapoznanie z dostępnymi narzędziami deweloperskimi
Program
Programowanie funkcyjne
- Definicja, podstawowe założenia, zalety, wyzwania
- Pure functions
- Niezmienność
- Referential transparency
- Rekurencja
- Pattern matching
- Funkcje wyższego rzędu
- Kompozycja, częściowa aplikacja, currying
- Funkcje polimorficzne
- Funkcyjne struktury danych
Podstawy języka PureScript
- Przygotowanie środowiska
- Tworzenie i konfiguracja projektu
- Typy wbudowane
- Funkcje i wyrażenia
- Operatory
- Wykorzystanie pattern matching
- Wyrażenia logiczne (if-then-else, case, guards)
- Bindings (where, let)
- Definiowanie typów niestandardowych
- Zastosowanie rekurencji
- Wykorzystanie biblioteki standardowej
Funkcyjne budowanie abstrakcji
- Kompozycja funkcji w praktyce
- Praca z listami i drzewami
- Algebraic Data Types (ADT)
- Typeclasses
- Elementy algebry abstrakcyjnej
- Functors, Applicative Functors, Monads
- Synchroniczne i asynchroniczne efekty uboczne
Programowanie funkcyjne w realnym projekcie
- Interakcja ze środowiskiem zewnętrznym / poprawne wykorzystanie kodu powodującego efekty uboczne
- Zarządzanie stanem
- Dostęp do danych
- Logika biznesowa
- Budowanie interfejsu z użyciem Halogen framework
- Integracja
- Testowanie