Mohamed Taman

The Cool Thing about Cool Things in Java 16 & 17 LTS

What if you could write less boilerplate and more expressive code? Discover how Java 17's records and pattern matching make it possible.

The Cool Thing about Cool Things in Java 16 & 17 LTS
#1about 3 minutes

Understanding Java's release cadence and LTS strategy

The six-month feature release cycle culminates in a Long-Term Support (LTS) version every two years, simplifying migration planning.

#2about 10 minutes

How Java introduces new features safely

Preview features and incubator modules allow developers to test new language constructs and APIs before they are finalized, enabling community feedback.

#3about 7 minutes

Reducing boilerplate code with immutable Java records

Records provide a concise syntax for creating immutable data carrier classes, automatically generating constructors, accessors, equals(), and hashCode().

#4about 7 minutes

Simplifying type checks with pattern matching

Pattern matching for instanceof and switch statements eliminates the need for explicit casting and simplifies complex conditional logic.

#5about 3 minutes

Controlling class hierarchies with sealed classes

Sealed classes and interfaces restrict which other classes can extend or implement them, providing more declarative control over inheritance hierarchies.

#6about 6 minutes

Exploring new and improved APIs in Java

Recent API additions include day period support in DateTimeFormatter, a more efficient Stream.toList() method, and Unix-domain socket channels for IPC.

#7about 7 minutes

Strong encapsulation and the foreign memory access API

Strong encapsulation of internal APIs like sun.misc.Unsafe is now paired with the new Foreign Linker and Memory Access APIs for safer native interoperability.

#8about 2 minutes

Gaining performance with the Vector API and elastic metaspace

The Vector API optimizes complex mathematical computations, while elastic metaspace reduces the JVM's memory footprint by returning unused class metadata memory to the OS.

#9about 4 minutes

Navigating key deprecations and removals in Java

Several legacy features have been removed, including RMI Activation, the Applet API, experimental AOT/JIT compilers, and weak TLS versions.

#10about 14 minutes

Packaging applications natively with the jpackage tool

The jpackage tool simplifies application distribution by creating self-contained, native installers like MSI, DMG, and RPM for different operating systems.

Related jobs
Jobs that call for the skills explored in this talk.

Software Engineer

tree-IT GmbH
Bad Neustadt an der Saale, Germany

Remote
Intermediate
Senior

Featured Partners

From learning to earning

Jobs that call for the skills explored in this talk.

android developer

android developer

yusuf
Andijan, Uzbekistan

Remote
Junior
CSS
Java
HTML
JavaScript
+1
Java Developer

Java Developer

Code First Girls

Intermediate
Java
DevOps
Python
JavaScript
Agile Methodologies
TechLead Java

TechLead Java

It Advanced Consulting

Senior
API
CSS
GIT
HTML
Java
+21