Warsztat Java #11 - Kolejne wersje Java!
What you'll learn
- Mnóstwa elementów JDK od 9 do 19
- JShell: Interaktywna powłoka REPL dla Javy.
- Functional Programming: Lambda expressions, functional interfaces.
- var: Wprowadzenie lokalnej inferencji typów.
- javac: Nowe opcje i usprawnienia kompilatora.
- switch (preview): Rozszerzenie instrukcji switch.
- Text Blocks (preview): Wprowadzenie bloków tekstowych.
- NullPointerException: Poprawa diagnostyki NPE.
- Sealed Classes (preview): Wprowadzenie klas zapieczętowanych.
- Day Period: Wprowadzenie Day Period.
- jpackage: Nowe narzędzie do pakowania aplikacji.
- Pattern Matching for switch (preview): Wprowadzenie dopasowywania wzorców w switch.
- Deprecated finalize(): Deprecacja metody finalize.
- Virtual threads (preview): Wprowadzenie wirtualnych wątków.
- Record Patterns (Preview): Wprowadzenie wzorców rekordów.
- i wiele wiele innych elementów!
Requirements
- Uczestnicy powinni być zaznajomieni z podstawami programowania w Javie, w tym z koncepcjami takimi jak klasy, obiekty, interfejsy i dziedziczenie
- Kurs jest intensywny i wymaga aktywnego uczestnictwa oraz chęci do nauki nowych narzędzi i technik. Otwartość na zdobywanie wiedzy teoretycznej i praktycznej jest kluczowa.
Description
Zapraszamy na warsztat poświęcony nowościom w kolejnych wersjach Javy! Języki programowania i technologie nieustannie się rozwijają, co wymaga od nas ciągłego aktualizowania wiedzy. Kurs został zaprojektowany tak, aby najpierw skupić się na fundamentalnych zagadnieniach Javy, a następnie przejść do nowości wprowadzanych w kolejnych wersjach. Dzięki temu będziesz na bieżąco z najnowszymi funkcjami i usprawnieniami języka Java.
Tematyka warsztatu:
JDK 8
Zarys historyczny wersji Java
Krótkie wprowadzenie do JDK 8 i jego znaczenia dla ekosystemu Javy.
Interfejsy
Default methods, static methods.
Date & Time
Nowe API do pracy z datami i czasem (java.time).
Functional Programming
Lambda expressions, functional interfaces.
Optional
Unikanie null-pointer exceptions za pomocą klasy Optional.
IO
Nowości w strumieniach wejścia/wyjścia.
Kolekcje
Zmiany i ulepszenia w kolekcjach.
JDK 9
JShell
Interaktywna powłoka REPL dla Javy.
Kolekcje
Nowe metody tworzenia niezmiennych kolekcji.
Interfejsy
Rozszerzenia interfejsów.
try-with-resources
Ulepszenia w zarządzaniu zasobami.
Optional
Nowe metody w klasie Optional.
Streams
Ulepszenia w strumieniach.
Klasy anonimowe
Zmiany w obsłudze klas anonimowych.
JDK 10
var
Wprowadzenie lokalnej inferencji typów.
Kolekcje
Dalsze ulepszenia w kolekcjach.
Optional
Kolejne nowe metody w klasie Optional.
Streams - Collectors
Nowe funkcje w Collectors.
JDK 11
javac
Nowe opcje i usprawnienia kompilatora.
String
Nowe metody w klasie String.
var i lambda
Użycie var w lambdach.
Files
Nowe metody w klasie Files.
JDK 12
Preview features
Wprowadzenie funkcji w wersji zapoznawczej.
switch (preview)
Rozszerzenie instrukcji switch.
Streams - Collectors
Dalsze usprawnienia w Collectors.
String
Nowe metody i zmiany w klasie String.
JDK 13
switch (preview)
Kontynuacja rozszerzeń switch.
Text Blocks (preview)
Wprowadzenie bloków tekstowych.
JDK 14
switch
Finalizacja zmian w instrukcji switch.
NullPointerException
Poprawa diagnostyki NPE.
Pattern Matching instanceof (preview)
Wprowadzenie dopasowywania wzorców w instanceof.
Records (preview)
Wprowadzenie rekordu.
Text Blocks (preview)
Dalsze prace nad blokami tekstowymi.
JDK 15
Text Blocks
Finalizacja bloków tekstowych.
Pattern Matching instanceof (preview)
Kontynuacja dopasowywania wzorców w instanceof.
Records (preview)
Dalsze prace nad rekordami.
Sealed Classes (preview)
Wprowadzenie klas zapieczętowanych.
JDK 16
Records
Finalizacja rekordu.
Pattern Matching instanceof
Finalizacja dopasowywania wzorców w instanceof.
Streams
Nowe funkcje w strumieniach.
Day Period
Wprowadzenie Day Period.
jpackage
Nowe narzędzie do pakowania aplikacji.
Sealed Classes (preview)
Dalsze prace nad klasami zapieczętowanymi.
JDK 17
Sealed Classes
Finalizacja klas zapieczętowanych.
Pattern Matching for switch (preview)
Wprowadzenie dopasowywania wzorców w switch.
JDK 18
Deprecated finalize()
Deprecacja metody finalize.
Pattern Matching for switch (preview)
Kontynuacja prac nad dopasowywaniem wzorców w switch.
JDK 19
Virtual threads (preview)
Wprowadzenie wirtualnych wątków.
Pattern Matching for switch (Third preview)
Kolejna wersja zapoznawcza dopasowywania wzorców w switch.
Record Patterns (Preview)
Wprowadzenie wzorców rekordów.
Format kursu: Warsztat będzie miał formę wykładów połączonych z praktycznymi przykładami kodu. Materiały będzie zawierać też notatki w formie pdf, które można przyswajać według własnych preferencji.
Wersja Javy: Minimalna wymagana wersja Javy to 8, ale zaleca się korzystanie z najnowszej wersji, aby móc w pełni wykorzystać nowości wprowadzane w kolejnych wydaniach.
Warsztat ten jest 11. warsztatem w ramach ścieżki Zajavka. Oczywiście możesz go realizować niezależnie od innych moich materiałów.
Warsztat „Kolejne wersje Java!” jest idealny dla osób, które chcą być na bieżąco z najnowszymi funkcjami i usprawnieniami wprowadzanymi w kolejnych wersjach Javy. Niezależnie od Twojego poziomu doświadczenia, kurs ten dostarczy Ci niezbędnych narzędzi i wiedzy, abyś mógł lepiej projektować, implementować i utrzymywać swoje aplikacje.
Uczestnik warsztatu „Kolejne wersje Java!” zdobędzie kompleksową wiedzę na temat nowości wprowadzanych w kolejnych wersjach Javy od JDK 8 do wersji 19.
Who this course is for:
- Początkujących programistów, którzy chcą dowiedzieć się o najnowszych funkcjach Javy.
- Średniozaawansowanych i zaawansowanych deweloperów, którzy chcą pogłębić swoją wiedzę na temat nowości wprowadzanych w kolejnych wersjach Javy.
- Studentów informatyki i bootcampowiczów, którzy pragną zdobyć praktyczne umiejętności, które mogą być użyteczne w ich przyszłej karierze zawodowej.
Instructors
Zajavka to kompletny, profesjonalny i pasjonujący roczny kurs programowania. Zajavkę stworzyliśmy z myślą o tych, którzy pragną rozpocząć swoją intensywną przygodę z programowaniem i w ciągu 12 miesięcy osiągnąć poziom profesjonalnego programisty Javy. Zacznij naukę od bootcampu od podstaw i kontynuuj ją w warsztatach, które krok po kroku, intensywnie i w ciągu kilku miesięcy przygotują Cię do pełnienia roli profesjonalnego programisty Javy.
Jestem programistą Java z ponad 9 letnim doświadczeniem komercyjnym. Zajmuję się głównie technologiami Java i JVM oraz tworzeniem stron aplikacji webowych wykorzystujących technologie Java, Spring, Kafka. Mam również doświadczenie w tworzeniu aplikacji opartych o React. Stawiam przede wszystkim na ciągły rozwój osobisty, zdobywanie nowych umiejętności i podnoszenie jakości swojej pracy. W swojej karierze zawodowej spędziłem dużo czasu ucząc innych, prowadząc szkolenia i nagrywając materiały wideo w celach edukacyjnych.