Welcome to OpenJDK (Java) 23 (#57) - podcast episode cover

Welcome to OpenJDK (Java) 23 (#57)

Sep 14, 20241 hr 7 minSeason 4Ep. 57
--:--
--:--
Download Metacast podcast app
Listen to this episode in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Episode description

OpenJDK (Java) 23 is here! This version introduces three new features to the language and runtime, many bug fixes, small improvements, and a longer list of preview features. What are the most important facts about this release? Let's find out...

GuestsSimon RitterArtur SkowrońskiContent00:00 Introduction

00:49 What OpenJDK version are we on?

Foojay post by Loic Mathieu: https://foojay.io/today/java-23-whats-new/  

01:26 Why switch to OpenJDK 23?

02:45 JEP 467: Markdown Documentation Comments

https://openjdk.org/jeps/467

04:15 JEP 474: ZGC: Generational Mode by Default

https://openjdk.org/jeps/474

https://www.azul.com/blog/what-should-i-know-about-garbage-collection-as-a-java-developer/

https://newrelic.com/resources/report/2024-state-of-the-java-ecosystem

14:17 JEP 471: Deprecate the Memory-Access Methods in sun.misc.Unsafe for Removal

https://openjdk.org/jeps/471

Foojay post by Bazlur Rahman: https://foojay.io/today/unsafe-is-finally-going-away-embracing-safer-memory-access-with-jep-471/  

22:04 Preview and incubator features

22:31 JEP 466: Class-File API (Second Preview)

https://openjdk.org/jeps/466

25:48 JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview)

https://openjdk.org/jeps/455

https://openjdk.org/projects/valhalla

30:52 JEPs leading to cleaner code

https://openjdk.org/projects/amber

32:28 JEP 469: Vector API (Eighth Incubator)

https://openjdk.org/jeps/469 

35:28 JEP 473: Stream Gatherers (Second Preview)

https://openjdk.org/jeps/473

38:07 JEP 476: Module Import Declarations (Preview)

https://openjdk.org/jeps/476

Overview of projects with modules: https://docs.google.com/spreadsheets/u/2/d/e/2PACX-1vQbHhKXpM1_Vop5X4-WNjq_qkhFRIOp7poAF79T0PAjaQUgfuRFRjSOMvki3AeypL1pYR50Rxj1KzzK/pubhtml  

43:03 JEP 477: Implicitly Declared Classes and Instance Main Methods (Third Preview)

https://openjdk.org/jeps/477

45:40 JEP 480: Structured Concurrency (Third Preview)

https://openjdk.org/jeps/480

46:26 JEP 481: Scoped Values (Third Preview)

https://openjdk.org/jeps/481

46:40 JEP 482: Flexible Constructor Bodies (Second Preview)

https://openjdk.org/jeps/482

48:56 Removal of String templates

https://openjdk.org/jeps/430  (OpenJDK 21): String Templates (Preview)

https://openjdk.org/jeps/459  (OpenJDK 22): String Templates (Second Preview)

Nice description on the mailing list: https://mail.openjdk.org/pipermail/amber-spec-experts/2024-March/004010.html  

53:21 Process of releases

55:25 Predictions for next LTS 25

57:48 License changes for Oracle JDK 17

58:38 About JVM Weekly by Artur (and Scala, AI, LLMs)

JVM Weekly Newsletter: https://www.linkedin.com/newsletters/7097859802881540096/

https://webtechie.be/tags/jfx-in-action/  

1:06:18 Conclusions

For the best experience, listen in Metacast app for iOS or Android