Scala för backendutveckling och funktionell programmering
Scala körs på JVM och kombinerar objektorienterad och funktionell programmering i ett enda statiskt typat språk. Det driver datainfrastrukturen hos företag som Twitter, LinkedIn och Databricks – med hjälp av ramverk som Apache Spark, Akka och Play. Den här kursserien behandlar Scala från syntax och typsystem till produktionsklar backendutveckling, samtidighet och avancerade funktionella mönster.
Det här lär du dig
Ni börjar med Scalas syntax, REPL, värden, typer och mönstermatchning och går sedan vidare till case-klasser, algebraiska datatyper och felhanteringsmodellen Option/Either/Try. Därefter arbetar ni med högre ordningens funktioner, svansrekursion, for-comprehensions och lat evaluering med strömmar. Bland de mellanliggande ämnena finns implicits, typklasser, generics, JSON-bearbetning med Circe, REST-API:er med http4s, asynkron programmering med Futures och fullständig backendutveckling med Play Framework. De avancerade kurserna behandlar Cats och IO-monaden, ZIO, funktionell domänmodellering, databasåtkomst med Doobie, datapipelines med Akka Streams, distribuerade system med Akka Actors och distribution av mikrotjänster. Kursserien avslutas med metaprogrammering i Scala, makron och prestandajustering.
Utbildningsvägen
Fyrtio kurser går från A1 till C2. A1- och A2-kurserna lägger grunderna i språket: syntax, samlingar, strängar, tupler och mönstermatchning. B1-kurserna bygger upp färdigheter i funktionell programmering – rekursion, foldning, lata listor, traits, oföränderlighet och byggverktyget SBT. På B2-nivå går ni vidare in i ekosystemet med typklasser, Circe, Play, Spark, funktioner i Scala 3 och asynkron programmering. C1-delen tar upp produktionsfrågor – Cats IO, ZIO, Akka Actors, Akka Streams, Doobie och molnbaserade mikrotjänster. Kursserien avslutas på C2-nivå med Metaprogrammering och makron i Scala samt Prestandajustering och optimering i Scala.
Så fungerar det
Varje kurs är indelad i korta, praktiska lektioner som ni genomför i den inbyggda kodeditorn med feedback i realtid. En AI-handledare finns tillgänglig när ni kör fast, och progressionen är utformad så att varje koncept bygger direkt vidare på det föregående – utan att ni behöver hoppa mellan externa resurser.