Data-oriented programming in Java
summary
Shows that Java can be used for data‑oriented programming by converting a timesheet app into immutable records for payloads, using sealed classes to model exact/no/multiple search results, and applying pattern matching plus switch expressions and record deconstruction to drive flow without mutating objects. Demonstrates validation → store flows, compiler‑enforced exhaustiveness, and safer concurrency. Notes when features landed (records ~Java 14/15, pattern matching and sealed support later; recommends moving to Java 21 LTS to get the full set).
AI-written summary · about
chapters (15)
- 0:00Introduction to talk
- 1:11About the speaker
- 1:56Agenda overview
- 2:40Evolution of Java apps
- 7:22Data-oriented programming principles
- 14:24Java support for DOP
- 15:09Java records explained
- 18:03Sealed classes in Java
- 21:14Pattern matching basics
- 26:22Advanced pattern matching
- 32:46Combining Java and DOP
- 33:07Optional sealed interface example
- 35:12Real-world REST example
- 39:26Summary of DOP in Java
- 40:09Q&A session
related talks
53mData oriented Programming in Java
49mData-oriented Programming in Java
31mData Oriented Programming and Matching in Java
54mData Focused programming with Pattern Matching in Java
21mData-Oriented programming
54mData Oriented Programming with the JDK 19
33mImprove your Java Applications with Records and Pattern Matching
01h 08mClean Application Development with Records, Sealed Classes and Pattern Matching
