Kursplan

Introduktion

  • Vem använder Scala?
  • Utveckla storskaliga, rent funktionella program

Översikt över funktionell Programming i Scala

  • Funktioner av högre ordning
  • Kombinatorer
  • Polymorfa funktioner

Mastering Scala Typer

  • Produkttyper & Summatyper
  • Supertyper och undertyper
  • Universaler & Existentialer
  • Typer av högre slag
  • Typ lambda

Mastering Scala Typklasser

  • Klasser & instanser
  • Knep med impliciter
  • Polymorfa begränsningar

Fallstudie: Mycket tillståndsfulla program med komplexa externa system

Kodningsövning

Arbeta med data

  • Oföränderlig data och rekursion
  • Katamorfismer och kyrkkodning
  • Fixed-Point Data
  • Rekursionsscheman

Avancerad mönstermatchning i Scala

  • Djup matchning
  • Använda extraktorer

Fallstudie: Scala och Big Data

Kodningsövning

Använda funktionella mönster

  • Alternativ, antingen och valideringar
  • Semigrupper och monooider
  • Funktioner
  • Applikationer
  • Monader
  • Fällbara & Traverserbara
  • Linser

Arbeta med effekter

  • IO
  • stat
  • Läsare
  • Kombinera effekter

Fallstudie

  • TBD

Kodningsövning

Funktionell arkitektur

  • Modern arkitektur för FP
  • Reified Computation & Deferred Evaluation
  • Kompositionsutvärderare
  • Optimeringstekniker
  • Rent funktionellt hån

Bibliotek och DSL

  • Anpassade kontrollstrukturer med by-name parametrar
  • Bygga väldesignade bibliotek och interna DSL:er

Funktionell undantagshantering

  • Traditionell undantagshantering
  • Funktionell undantagshantering
  • Använder Prova med för förståelse

Slutlig kodningsövning och utvärdering

Avslutande kommentarer

Krav

  • Praktisk erfarenhet av Scala programmering
  • Förtrogenhet med mönstermatchning och egenskaper

Publik

  • Scala programmerare som vill lära sig de mer avancerade och nyanserade funktionerna i Scala
 14 timmar

Antal deltagare


Price per participant

Upcoming Courses

Relaterade Kategorier