Nowości w Javie w wersjach 9-11, z naciskiem na migrację i moduły.

Cel szkolenia

Celem szkolenia jest zapoznanie programistów Javy z nowościami, które pojawiły się w wersjach 9-11. W czasie szkolenia uczestnicy poznają nie tylko nowe konstrukcje na poziomie samego języka, ale także przećwiczą zmiany w ekosystemie poza samym językie. Szczególny nacisk jest kładziony na przećwiczenie scenariuszy migracji oraz zrozumienie systemu modułów. Zakres szkolenia obejmuje także kwestie nietechniczne.

Mocne strony szkolenia

Szkolenie zostało stworzone na podstawie rzeczywistych migracji i wyzwań spotykanych w czasie pracy z Javą po wersji 8.

Adresaci szkolenia

Programiści Javy mający opanowaną Javę do wersji 8, którzy chcą poznać rewolucyjne zmiany w wersjach 9-11, zrozumieć sens tych zmian, szczególnie przed migracją do JVM 11, oraz którzy chcą wykorzystać nowe cechy Javy do zwiększenia wydajności zarówno swojej, jak i tworzonych systemów.

Wymagania dla uczestników

Umiejętność programowania w Javie 8 poparta doświadczeniem praktycznym.

Parametry szkolenia

2 * 8h (2 * 7h netto)

Wykłady i warsztaty.

Maksymalna liczba uczestników: 12

Program szkolenia

  1. Zmiany nietechniczne (0,5h)
    • nowy schemat wydawania wersji
    • Oracle JDK vs. OpenJDK vs. inni dostawcy
    • płatność za JVM 11
  2. jshell i java (1h)
    • polecenia wbudowane, nawigacja, edycja
    • praca z sesją
    • definiowanie i wykorzystywanie klas, metod, zmiennych
    • uruchamianie, tworzenie skryptów, obsługa classpath, zarządzanie importami
    • dodawanie shebang, pomijanie javac
  3. var (znacznik typu dla zmiennych lokalnych) (0,5h)
    • wyjaśnienie koncepcji zmiennej lokalnej inicjalizowanej bezzwłocznie
    • przykłady zastosowania (także pętle i try with resources)
    • wyjaśnienie działania wnioskowania typu
  4. Application Class-Data Sharing (0,5h)
    • tworzenie AppCDS
    • porównanie czasu uruchamiania
  5. Omówienie usuniętych i wyłączonych fragmentów API, m.in.: (0,5h)
    • aplety
    • Java Web Start
    • JavaFX
    • sun.misc.Unsafe
  6. Omówienie API uznanych za przestarzałe, m.in: (0,5h)
    • Enhanced Deprecation
    • jdeprscan
  7. Nowości w API, w szczególności (2,5h):
    • w klasie String
    • metody fabryczne kolekcji
    • w obsłudze IO
    • w StreamAPI
    • w klasie Optional
    • metody prywatne w interfejsach
    • try with final resources
  8. Zmiany poza językiem (1h)
    • Javadoc
    • Compact Strings
    • Variable Handles
    • Process API (oraz format wersji)
    • Unicode
    • Epsilon GC & ZGC
    • Nests
    • HTTP/2
  9. System modułów (Jigsaw) (3h)
    • omówienie modułów w Javie 9 i Javie 11
    • powody wprowadzenia
    • wprowadzenie teoretyczne do tworzenia modułów od podstaw, nowa składnia
    • moduły automatyczne i nienazwane
    • nowe parametry java i javac związane z modułami
    • przedstawienie koncepcji dostępu nielegalnego (illegal access)
    • tworzenie nowej aplikacji wykorzystującej moduły
    • wykorzystanie jdeps oraz jlink
  10. Migracja istniejącej aplikacji do Javy 11 (2,5h)
    • zalecane i typowe kroki
    • dlaczego warto (i jak przekonać biznes)
    • najczęstsze problemy
    • multi-release JAR
  11. Java Flight Recorder, Java Mission Control, Java Unified Logging (1h)
    • podstawy wykorzystania
    • definiowanie ustawień na wypadek awarii
    • podłączanie do działającej aplikacji
    • przykłady i pułapki stosowania -Xlog
  12. Features preview oraz przyszłość Javy (0,5h)
    • krótkie omówienie features preview oraz projektów Amber, Loom i Valhalla

<

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