Zaawansowane aspekty programowania w języku Java.

Cel szkolenia

Celem szkolenia jest zapoznanie uczestników z zaawansowanymi aspektami programowania w języku Java. Takimi jak dynamiczne wywoływanie metod, tworzenie własnych adnotacji, skomplikowanych typów generycznych, modułów, dogłębne poznanie strumieni, używanie specjalnych typów referencji i innych zaawansowanych aspektów Java.

Na życzenie klienta szkolenie dedykowane może zostać wzbogacone o wybrane tematy związane z wydajnością (J/ADV) czy wielowątkowością (J/MT).

Mocne strony szkolenia

Szkolenie przedstawia skomplikowane aspekty języka Java w przystępny i użyteczny sposób.

Grupa docelowa

programista

Adresaci szkolenia

Programiści chcący poznać język Java na zaawansowanym poziomie.

Wymagania dla uczestników

Umiejętność programowania w języku Java

Parametry szkolenia

Wykłady i warsztaty. Maksymalna liczba uczestników: 8-10 Na szkoleniach zamkniętych, w zależności od potrzeb klienta, program może być rozszerzony o zaawansowane aspekty wydajności (J/ADV) czy wielowątkowości (J/MT).

Program szkolenia

  1. Enumeracje (2 h)
  • Więcej niż wyliczenia
  • Definiowanie metod w enumeracjach
  • Atrybuty w enumeracjach
  • Konstruktory w enumeracjach
  1. Tworzenie adnotacji (3,5 h)
    • Podstawy adnotacji
    • Adnotacje na pakiecie
    • Introspekcja a adnotacje
    • Składnia tworzenia adnotacji
    • Adnotacje wielokrotne
  2. Dynamiczna Java (5 h)
    • Dynamiczne tworzenie obiektów
    • Refleksja
    • Invokedynamic
    • Dynamiczne proxy
  3. Typy generyczne (5,5 h)
    • Tworzenie metod generycznych
    • Tworzenie typów generycznych
    • Znaczniki (wildcards): ?, extends i super
    • Znaczniki wielokrotne
    • Zacieranie typów (Type Erasure)
    • Ograniczenia generyczności
  4. Programowanie funkcyjne (8 h)
    • Wyrażenia Lambda
    • forEach w Iterable i Map
    • Referencje do metod
    • Referencje do konstruktorów
    • Interfejsy funkcyjne
    • Metody domyślne w interfejsach
    • Metody statyczne w interfejsach
    • Metody prywatne w interfejsach
    • Strumienie plików, tablic, kolekcji, adhoc
    • Praca na strumieniach:
    • Filtrowanie, reagowanie, przekształcanie
    • Kończenie strumieni z i bez agregacji
    • Wybrane interfejsy funkcyjne
    • Dokładniej Optional
    • Dokładniej Collectors
  5. Moduły (5 h)
    • public zbyt publiczny
    • Moduł domyślny
    • Struktura modułu
    • Tworzenie modułów: Definiowanie, budowanie, uruchamianie
    • Udostępnianie pakietów
    • Deklaracja użycia
    • Dostarczanie i używanie usług
    • Moduły a ServiceLoader
    • Strategie i problemy
  6. Specjalne referencje (3 h)
    • Reference i ReferenceQueue
    • SoftReference
    • WeakReference i WeakHashMap
    • PhantomReference i Cleaner
    • Cykl życia obiektu i wycieki pamięci (opcjonalnie)

Pytania?

* Wymagane.


Konsultant on-line
Skorzystaj z usług naszego konsultanta on-line.
Naciśnij przycisk ‘Skorzystaj’ aby przejść do okienka czatu
Kontakt
ul. Nowogrodzka 62c
02-002 Warszawa
Telefon +48 22 2035600
Fax +48 22 2035601
Email