Trwają zapisy do grupy

Szkolenie: Zaawansowane aspekty języka Java

Szkolenie z zaawansowanego programowania w języku Java rozwija umiejętności optymalizacji, wykorzystania nowości językowych, programowania funkcyjnego, pracy ze strumieniami, wirtualnymi wątkami oraz modularności JVM

  • Trenerzy praktycy
  • Kameralne grupy

Czas trwania szkolenia:3 dni (24h)

Poziom zaawansowania:

Kod kursu:J/EXT

dobre-praktyki-javawydajnosc-javazaawansowane-programowanie-javajava-zaawansowana

Dostępne terminy szkolenia

  • Termin
  • Trener
  • Cena
  • Zapis
  • Lokalizacja

Termin:

27 maja
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2550 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

14 września
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2550 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

12 października
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2550 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

23 listopada
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2550 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

14 grudnia
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2550 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Forma szkolenia

Interesuje Cię szkolenie stacjonarne?

Powiadom o kolejnych terminach

Interesuje Cię szkolenie w innym terminie?

Zaawansowane aspekty języka Java

Cele szkolenia

  • Szkolenie przygotowuje do samodzielnego projektowania i optymalizowania zaawansowanych aplikacji w języku Java z wykorzystaniem najnowszych funkcji i narzędzi

  • Szkolenie uczy stosowania nowoczesnych technik programistycznych, wzorców projektowych oraz rozwiązywania problemów wydajnościowych w środowisku Java

  • Szkolenie rozwija umiejętność analizy i wdrażania rozwiązań opartych o programowanie funkcyjne, modularność oraz zaawansowane przetwarzanie danych


Dla kogo?

  • Programistów Java z podstawowym doświadczeniem, którzy chcą rozwinąć umiejętności w zakresie zaawansowanego programowania i optymalizacji aplikacji

  • Osób pracujących nad rozwojem i utrzymaniem aplikacji Java, zainteresowanych nowościami językowymi oraz najlepszymi praktykami


Efekty kształcenia

  • Uczestnik projektuje wydajne aplikacje z wykorzystaniem zaawansowanych funkcji języka Java

  • Uczestnik analizuje i optymalizuje kod pod kątem wydajności i nowoczesnych standardów

  • Uczestnik wdraża wzorce projektowe oraz techniki programowania funkcyjnego

  • Uczestnik rozróżnia i stosuje narzędzia do modularności i zarządzania zależnościami

  • Uczestnik wykorzystuje wirtualne wątki i nowoczesne API do przetwarzania równoległego

  • Uczestnik ocenia i implementuje rozwiązania zwiększające czytelność i jakość kodu


Wymagania

  • Podstawowa umiejętność programowania w języku Java


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

Krótki przegląd istotnych nowości w języku Java

Zaawansowane aspekty praktycznego użycia Javy

  • Zasady tworzenia własnych adnotacji

  • Programowanie aspektowe z wykorzystaniem adnotacji oraz skanerów klas (ClassGraph, Jandex)

  • Typy generyczne z operatorami extend / super / &

  • Typy wyliczeniowe jako obiekty typu Singleton, fabryki obiektów oraz wzorzec Flyweight

  • Wprowadzenie do typów zapieczętowanych (sealed types) i ich praktyczne zastosowanie

Programowanie funkcyjne w Javie

  • Zasady programowania funkcyjnego jako podstawa współczesnego programowania

  • Lambdy i interfejsy funkcyjne

  • Typowe błędy w tworzeniu typów niemutowalnych w Javie

  • Rekordy a ich zastosowanie w programowaniu funkcyjnym

  • Pattern matching z wykorzystaniem konstrukcji if / switch oraz typów zapieczętowanych

  • Wykorzystanie nowości w języku jako nowy styl programowania - Data Oriented Programming

  • Obiektowe wzorce projektowe a programowanie funkcyjne

Zaawansowane procesowanie strumieni funkcyjnych

  • Typowe błędy podczas używania typów Optional / Stream

  • Prymitywne odpowiedniki strumieni i interfejsów funkcyjnych

  • NIO a funkcyjność

  • Budowanie zaawansowanego procesowania danych z wykorzystaniem strumieni i złożonych kolektorów

  • Stream Gatherers

Wirtualne wątki

  • Porównanie wątków fizycznych i wirtualnych

  • Potencjalne problemy w używaniu wirtualnych wątków

  • Structured Concurrency - nowe spojrzenie na programowanie asynchroniczne w Javie

  • Używanie istniejących oraz pisanie własnych podtypów StructuredTaskScope.Joiner

  • Popularne frameworki a wirtualne wątki

Rozszerzenia Języka Java z wykorzystaniem popularnych bibliotek

  • Lombok - zastosowanie zaawansowanych adnotacji @ExtensionMethod, @SuperBuilder, @Accessors, @Wither

  • MapStruct - wykorzystanie jako konstruktor kopiujący / deep cloning

  • Jackson / Gson - nietypowe przypadki związane z serializacją obiektów do formatu JSON

Optymalizacja obliczeń

  • Stable Values

  • Wołanie natywnych aplikacji z wykorzystaniem Process API oraz Foreign Memory / Linker API

  • Optymalizowanie procesowania Stringów w różnych praktycznych scenariuszach

  • Vector API jako alternatywa dla bezpośredniego paralelizmu

JMPS - Modularność Javy

  • Wprowadzenie do JPMS

  • Problemy we wprowadzaniu modułów do istniejących aplikacji

  • Budowanie własnych, zoptymalizowanych obrazów JVM

  • Budowanie modularnych aplikacji z wykorzystaniem serwisów

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.10.2025

Uczestnik szkoleniaZaawansowane aspekty języka Java

Aleksandra Kępska

Bardzo dobre merytorycznie, fajne przykłady, ćwiczenia praktyczne na plus. Materiał zbyt obszerny jak na dwa dni szkolenia, przez co tempo bardzo szybkie.

Więcej opinii