-
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)