Szkolenie dostępne na zamówienie

Szkolenie: Nowoczesne programowanie w języku Scala

Szkolenie nowoczesne programowanie w języku Scala uczy praktycznego wykorzystania Scali 3 do tworzenia mikroserwisów, aplikacji backendowych i rozwiązań Big Data, łącząc programowanie funkcyjne i obiektowe, z naciskiem na nowości językowe, testowanie oraz integrację z ekosystemem JVM

  • Trenerzy praktycy
  • Kameralne grupy

Czas trwania szkolenia:3 dni (24h)

Poziom zaawansowania:

Kod kursu:SCALA/J

jezyki-programowaniaprzetwarzanie-danychaplikacje-backendoweprogramowanie-scala

Szkolenie na zamówienie

  • Dostosowany program
  • Indywidualna wycena
  • Dowolny termin
Zapytanie o szkolenie

Nowoczesne programowanie w języku Scala

Cele szkolenia

  • Szkolenie przygotowuje do samodzielnego projektowania i implementowania aplikacji oraz mikroserwisów w języku Scala, z wykorzystaniem nowoczesnych narzędzi i bibliotek

  • Szkolenie uczy stosowania paradygmatów programowania funkcyjnego i obiektowego w praktycznych projektach, z uwzględnieniem nowości wprowadzonych w Scala 3

  • Szkolenie rozwija umiejętność integracji Scali z ekosystemem JVM oraz efektywnego testowania i wdrażania aplikacji


Dla kogo?

  • Programiści posiadający doświadczenie w programowaniu obiektowym, chcący rozwinąć umiejętności w języku Scala

  • Osoby realizujące projekty backendowe lub mikroserwisowe, zainteresowane nowoczesnymi technikami programowania funkcyjnego

  • Specjaliści IT pracujący z ekosystemem JVM, pragnący poszerzyć kompetencje o technologie Scala i narzędzia Big Data


Efekty kształcenia

  • Uczestnik projektuje aplikacje w języku Scala z wykorzystaniem wzorców funkcyjnych i obiektowych

  • Uczestnik analizuje i wdraża mikroserwisy z użyciem popularnych bibliotek Scali

  • Uczestnik stosuje nowości językowe wprowadzone w Scala 3 w praktycznych zadaniach

  • Uczestnik testuje i weryfikuje poprawność działania aplikacji przy użyciu narzędzi testowych

  • Uczestnik integruje kod Scali z ekosystemem JVM oraz narzędziami wspierającymi rozwój oprogramowania

  • Uczestnik rozróżnia i dobiera odpowiednie narzędzia do zarządzania projektem w Scali


Wymagania

  • Znajomość programowania obiektowego

  • Doświadczenie w programowaniu w języku Java lub innym podobnym


W cenie otrzymasz:

  • Materiały szkoleniowe

  • Certyfikat ukończenia szkolenia

  • W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki

Program szkolenia

Pobierz program w PDF

Konfiguracja środowiska i pierwszy program

  • Interpreter (REPL)

  • IDE

  • Omówienie podstaw związanych ze stylem kodu w Scali

  • Pierwszy program

  • Tworzenie i zarządzanie projektem programistycznym przy pomocy Simple Build Tool (SBT)

Podstawy programowania obiektowego w Scali

  • Typy standardowe

  • Klasy i cechy (traits)

  • Obiekty

  • Typy opcjonalne

  • Dziedziczenie

  • Pola mutowalne i niemutowalne

  • Kontrola widoczności

  • Case class i obiekty towarzyszące

  • Enumeracje a algebraiczne typy danych

  • Typy generyczne i klasy wariancji

  • Inferencja typów

  • Union / Intersection Types

  • Opaque Types

  • Własne operatory

Kolekcje dostępne w Scali oraz podstawy programowania funkcyjnego

  • Tablice

  • Kolekcje w bibliotece standardowej - listy, zbiory i mapy

  • Funkcje wyższego rzędu

  • Rozwijanie funkcji (currying)

  • Kolekcje mutowalne i niemutowalne

  • Zakresy (Range)

  • Popularne operacje na kolekcjach (tail, head, zip itp)

Obsługa wyjątków

  • W stylu obiektowym (try/catch)

  • W stylu funkcyjnym (Try/Success/Failure)

Zagadnienia programowania funkcyjnego

  • Instrukcja for - for loop/for comprehension

  • Funkcyjne struktury danych

  • Monoid / Monada

  • Dopasowanie wzorców - Pattern matching

  • Dopasowanie warunkowe - Pattern Guards

  • Dopasowanie po typie i sealed classes

  • Ekstraktory

  • Leniwość (lazy val)

Klasy, metody i parametry domniemane (Implicits)

Współbieżność / asynchroniczność

  • Wywołania asynchroniczne (futures and promises)

  • Kontekst uruchomienia (execution context)

  • Strumienie

Metaprogramowanie

  • Modyfikator inline

  • Przegląd możliwości tworzenia makr

  • Adnotacje

  • Refleksja

Wytwarzanie aplikacji

  • Dołączanie bibliotek do projektu programistycznego

  • Integracja z kodem Javy

  • Cats - rozszerzenia do programowania funkcyjnego

  • ZIO - wsparcie programowania asynchronicznego i współbieżnego typu I/O

  • Doobie - funkcyjna nakładka na JDBC

  • Integracja biblioteki Jackson w Scali vs biblioteka Circe

  • Http4s - budowanie mikroserwisów RESTowych w Scali

Testowanie aplikacji

  • ScalaTest, ScalaCheck

  • Mockowanie

  • ScalaTest DSL

  • ScalaTest matchers

Autorem szkolenia jest Mateusz Kamiński

Absolwent informatyki Instytutu Informatyki na Wydziale Elektroniki i Technik Informacyjnych Politechniki Warszawskiej. Obecnie pełni rolę Head of Product Team, Technology Evangelist oraz Trenera w firmie Sages, a także Senior Java Engineera i Architekta w Instytucie Podstaw Informatyki PAN. Posiada ponad 12-letnie doświadczenie w tworzeniu różnorodnego oprogramowania na platformie Java (JVM), z wykorzystaniem najpopularniejszych frameworków i bibliotek dostępnych na rynku. Przez wiele lat prowadził…

Wybrane opinie

Przeczytaj pozytywne opinie pochodzące z ankiet satysfakcji z naszych szkoleń wypełnianych wyłącznie przez ich uczestników po realizacji usługi

4.8
Ikona podpowiedziŚrednia ocen Sages w serwisie Google Ocena pochodzi ze średniej ocen Sages w serwisie Google i nie jest weryfikowana

30.01.2026

Uczestnik szkoleniaJira - organizacja i zarządzanie projektami

Adam NAJMOWICZ

Praktyczna wiedza w praktyce i swietna komunikacja z trenerem

Więcej opinii