Návrh Školení

Úvod

    Kdo používá Scala? Vývoj rozsáhlých, čistě funkčních programů

Přehled funkcionálního programování v Scala

    Kombinátory funkcí vyššího řádu Polymorfní funkce

Mastering Scala Typy

    Typy produktů a typy součtů Supertypy a podtypy Univerzální a existenciální Typy vyšších typů Typ Lambda

Mastering Scala Typové třídy

    Triky s třídami a instancemi s implicitními polymorfními omezeními

Případová studie: Vysoce stavové programy se složitými externími systémy

Cvičení kódování

Práce s daty

    Katamorfismy neměnných dat a rekurze a schémata rekurze dat s pevným bodem v církevním kódování

Pokročilé porovnávání vzorů v Scala

    Hluboké přizpůsobení Pomocí extraktorů

Případová studie: Scala a velká data

Cvičení kódování

Použití funkčních vzorů

    Možnosti, buďto a validace Pologrupy a Monoidy Funktory Aplikace Monády Skládací a posuvné čočky

Práce s efekty

    IO State Reader Kombinující efekty

Případová studie

    TBD

Cvičení kódování

Funkční architektura

    Moderní architektura pro FP Reified Computation & Deferred Evaluation Kompoziční hodnotitelé Optimalizační techniky Čistě funkční mocking

Knihovny a DSL

    Vlastní řídicí struktury s parametry podle názvu Vytváření dobře navržených knihoven a interních DSL

Zpracování funkčních výjimek

    Tradiční zpracování výjimek Funkční zpracování výjimek Použití Try with For comprehensions

Závěrečné kódovací cvičení a vyhodnocení

Závěrečné poznámky

Požadavky

  • Praktické zkušenosti s programováním Scala
  • Znalost shody vzorů a vlastností

Publikum

  • Scala programátoři, kteří se chtějí naučit pokročilejší a jemnější funkce Scala
 14 hodiny

Počet účastníků


Price per participant

Upcoming Courses

Související kategorie