Programowanie w języku Scala – kurs podstawowy

    Czas trwania
    Godzina rozpoczęcia
    Stopień trudności

      Programowanie w języku Scala - kurs podstawowy


      Szkolenie w wersji zdalnej i stacjonarnej

      Opis szkolenia

      Szkolenie Programowanie w języku Scala – kurs podstawowy, jest kursem dla programistów pragnących poznać nowoczesny, popularny, wieloparadygmatowy język programowania o szerokich zastosowaniach.

      Poznaj program szkolenia

      Co zyskasz dzięki szkoleniu ?

      Cele szkolenia 

      Celem szkolenia jest:

      • nabycie umiejętności programowania w języku Scala
      • poznanie cech programowania funkcyjnego, jego zalet i wad
      • ćwiczenie w praktyce poszczególnych elementów języka


      Umiejętności
      Dzięki szkoleniu  uczestnik:

      • zdobędzie podstawową wiedzę i umiejętności do pracy nad projektami realizowanymi w języku Scala. Należy do nich m.in. znajomość:
        • sposobu pracy nad projektem (SBT, IDE, debugger)
        • składni i semantyki języka Scala
        • popularnych kolekcji z biblioteki standardowej
        • dobrych praktyk programistycznych
        • technik funkcyjnych dostępnych w Scali
        • sposobów testowania jednostkowego kodu napisanego w Scali
      Czy to szkolenie jest dla Ciebie ?

      Profil uczestników

      Szkolenie dla programistów pragnących poznać nowoczesny, popularny, wieloparadygmatowy język programowania o szerokich zastosowaniach.

      Przygotowanie uczestników

      • dobra znajomość przynajmniej jednego obiektowego język programowania wywodzącego się z C++
      • znajomość języka Java nie jest konieczna, ale bardzo przydatna
      Czas trwania

      3 dni, 24 godziny szkoleniowe

      Szczegółowy program szkolenia

      Szczegółowy program szkolenia

      Wprowadzenie

      • Krótka historia języka
      • Różnice pomiędzy programowaniem obiektowym i funkcyjnym

      Konfiguracja środowiska

      • Stworzenie projektu
      • Przygotowanie IDE do pracy
      • Pierwszy program

      Podstawowe elementy języka

      • Składnia języka
      • Typy danych
      • Definiowanie:
        • Funkcji
        • Klas i Obiektów

      Programowanie obiektowe w Scali

      • Dziedziczenie (klasy abstrakcyjne, traity, linearyzacja, sealed)
      • Hierarchia klas
      • Typy generyczne: kowariancja i kontrawariancja
      • Integracja z Javą

      Programowanie funkcyjne w Scali

      • Funkcja jako obiekt
      • Funkcje wyższego rzędu
      • Case class  
      • Dopasowanie wzorców (pattern matching)
      • Rekursja ogonowa
      • Leniwa ewaluacja (słowo kluczowe lazy, call-by-name)

      Biblioteka kolekcji

      • Omówienie różnic pomiędzy kolekcjami mutowalnymi i niemutowalnymi
      • Zapoznanie się z podstawowymi kolekcjami

      Mechanizm implicitów

      • Parametry implicit 
      • Metody implicit
      • Klasy implicit, mechanim dodawania metod do istniejących obiektów
      • Wsparcie IDE w zakresie pracy z implicitami
      • Kolejność wyszukiwania implicitów

      Programowanie wielowątkowe

      • Sposoby synchronizacji wątków
      • Wykorzystanie obiektu Future

      Integracja Scali i Javy

      • Omówienie problemów występujących przy integracji obu języków.

      Testowanie aplikacji

      • Przegląd dostępnych bibliotek do testowania
      • Tworzenie przypadków testowych z użyciem biblioteki ScalaTest
      • Testowanie własności obiektów za pomocą biblioteki ScalaCheck

      Akka

      • Model aktorów
      • Cykl życia aktora i obsługa błędów

      Finalne ćwiczenie

      • Wykorzystanie zdobytych umiejętności w celu stworzenia prostego serwera REST API

      Metoda realizacji

      Szkolenie realizowane jest w formie występujących po sobie sesji szkoleniowych podzielonych na moduły. W ramach modułu szkoleniowego przewidziana jest część teoretyczna wyjaśniająca dane zagadnienie, samodzielnie rozwiązane przez uczestnika ćwiczenie oraz blok pytań i odpowiedzi.           .

      Pobierz program

      Ścieżka rozwoju
      • Scala – poziom zaawansowany
      W ramach szkolenia zapewniamy
      • materiały szkoleniowe
      • certyfikat potwierdzający udział w kursie
      • pełna obsługa cateringowa ( dla szkoleń stacjonarnych)

      Podobne szkolenia