Programowanie w języku Scala – kurs zaawansowany

    Czas trwania
    Godzina rozpoczęcia
    Stopień trudności

      Programowanie w języku Scala - kurs zaawansowany

      Opis szkolenia

      Szkolenie Programowanie w języku Scala – kurs zaawansowany przeznaczone jest dla osób znających podstawy języka Scala i mających kilkutygodniowe doświadczenie praktyczne w jego stosowaniu. Rekomendujemy ukończenie wcześniej kursu „Scala - kurs podstawowy".

      Poznaj program szkolenia

      Co zyskasz dzięki szkoleniu ?

      Cele szkolenia 

      Głównym celem szkolenia jest nabycie nowych umiejętności związanych z programowaniem w języku Scala. Uczestnicy poznają m. in. zaawansowane możliwosci systemu typów, wzorzec projektowy „type class” i mechanizmy metaprogramowania z użyciem makr. Drugim celem szkolenia jest poznanie popularnych bibliotek: Akka (model aktorów), Shapeless (programowanie generyczne) i Cats (programowanie funkcyjne).W trakcie warsztatów uczestnicy przećwiczą w praktyce nowo nabyte umiejętności.


      Umiejętności

      Dzięki szkoleniu  uczestnik będzie potrafił:

      • posłużyć się wzorcem „type class”,
      • napisać makro typu „blackbox”,
      • stworzyć hierarchię aktorów za pomocą biblioteki Akka,
      • stworzyć własny monad za pomocą biblioteki Cats
      Czy to szkolenie jest dla Ciebie ?

      Profil uczestników

      Szkolenie dla programistów którzy opanowali podstawy języka Scala i zainteresowani są zwiększeniem swoich kompetencji w tym zakresie.

      Przygotowanie uczestników

      • Szkolenie przeznaczone jest dla osób znających podstawy języka Scala i mających kilkutygodniowe doświadczenie praktyczne w jego stosowaniu.
      • Zaleca się ukończenie wcześniej kursu „Scala - kurs podstawowy”.
      Czas trwania

      2 dni, 16 godzin szkoleniowych

      Szczegółowy program szkolenia

      Szczegółowy program szkolenia

      Wprowadzenie

      • Odświeżenie podstawowej wiedzy na temat Scali

      System typów

      • Kowariancja vs kontrawariancja
      • Type members
      • Dependent types
      • Self types
      • Higher-kinded types
      • Dziedziczenie po Any

      Implicity

      • Kolejność wyszukiwania implicitów
      • Context-bounds
      • Type-class pattern
      • ClassTag

      Makra

      • Rodzaje makr w Scali
      • Nauka pisania makr typu „blackbox”

      Akka

      • Model aktorów, cykl życia
      • Obsługa błędów (fault tolerance)
      • Futures
      • Routers
      • Dispatchers
      • Przetwarzanie strumieniowe za pomocą Akka Streams

      Shapeless

      • HList – list heterogeniczna
      • Generacja kodu za pomocą traitów „Generic”

      Programowanie funkcyjne

      • Omówienie funkcyjnych wzorców: Functor, Monad, Monoid, State
      • Praktyczne ćwiczenia z użyciem biblioteki Cats

      Metoda realizacji

      Szkolenie realizowane jest w formie naprzemiennie następujących po sobie wykładów i ćwiczeń praktycznych. Ćwiczenia opracowane są w taki sposób, aby pozwolić uczestnikowi/czce przetestować poznane koncepcje w praktycznych zastosowaniach.          .

      Pobierz program

      Ścieżka rozwoju

      Po zakończeniu szkolenia rekomendowane jest skorzystanie z:

      • Ćwiczeń ze strony https://www.scala-exercises.org/.
      • Ksiażki „Functional Programming in Scala”. Autorzy: Paul Chiusano i Runar Bjarnason.
      • Dokumentacji biblioteki Akka: https://akka.io/docs/.
      • Szkolenia „TDD, clean code i refaktoryzacja” - dla osób zainteresowanych rozwinięciem swoich umiejętności w zakresie tworzenia dobrych, czytelnych oraz łatwych w utrzymaniu aplikacji.
      W ramach szkolenia zapewniamy
      • materiały szkoleniowe
      • certyfikat potwierdzający udział w kursie
      • pełna obsługa cateringowa ( dla szkoleń stacjonarnych)

      Podobne szkolenia