World Congress 2025 • Aug 20, 2025 • Session details

Data-Oriented Programming - Version 1.1

Nicolai Parlog

Is object-oriented design cluttering your data-heavy subsystems? Master Java's data-oriented paradigm using pattern matching and sealed interfaces to build safer, compiler-enforced domain models.

Pause
Mute Enter Fullscreen
#1 about 3 min

Introduction to data-oriented programming techniques in Java

Data-oriented programming views applications as functional pipelines that apply transformations over data instead of mutating hidden states.

#2 about 3 min

Defining a GitHub web crawler domain model codebase

A GitHub web scraper serves as a practical domain modeling example for applying explicit application constraints.

#3 about 3 min

Exploring the behavioral challenges of simple object-oriented modeling

Traditional mutable getter interfaces continually fail to prevent contradictory or theoretically impossible application state combinations.

#4 about 3 min

Modeling immutable data structures intricately using Java records

Java records combined with defensive collection copying guarantee underlying structural representations remain transparently and deeply immutable.

#5 about 3 min

Defining precise domain boundaries leveraging Java sealed types

Combining distinct Java interfaces and lightweight records into a closed inheritance hierarchy strictly defines valid combinatorial states.

#6 about 3 min

Preventing illegal application states through aggressive constructor validation

Isolating raw messy input shapes from sanitized destination objects rigidly enforces model correctness at the processing boundary.

#7 about 2 min

Separating structural domain architectures from core business operations

Migrating complex domain logic completely outside core data structures mitigates bloated code components and tangled feature dependencies.

#8 about 3 min

Executing conditional logic gracefully via sealed pattern matching

Java switch expressions safely drive decoupled polymorphic behaviors by interrogating the precise underlying shapes of transparent domain constructs.

#9 about 3 min

Deconstructing syntax trees explicitly using unnamed Java patterns

Innovative record deconstruction techniques and unnamed variable concepts implemented in newer Java versions dramatically bolster operational code readability.

#10 about 4 min

Enforcing exhaustive state coverage implementing intentional compiler errors

Maintaining sealed structural hierarchies deliberately provokes highly visible compiler errors whenever developers integrate untreated implementations into switch statements.

#11 about 3 min

Balancing pure data-oriented principles alongside functional object-oriented systems

Organizations must pragmatically deploy focused record structures or broader structural architectures conditionally depending upon localized system component goals.

Matching moments

3:31 min

Implementing data-oriented programming architectures in Java

Ron Veen Ron Veen · World Congress 2023

1:13 min

Applying data-oriented programming for concise java syntax

Balkrishna Rawool Balkrishna Rawool · World Congress 2024

2:19 min

Exploring pattern matching features and constructs in java

Balkrishna Rawool Balkrishna Rawool · World Congress 2024

2:36 min

Shifting to reactive programming paradigms in Java code

Niklas Heidloff · LIVE

1:52 min

Comparing imperative, declarative, and reactive programming paradigms

Tatiana Chervova · World Congress 2023

6:38 min

Using Java records to create immutable data carriers

Mohamed Taman · LIVE

Upcoming sessions on this topic

Open session

World Congress 2026 North America

September 24, 2026 · 16:50–17:20

Stage 9

From Guesswork to Governance: Data Contracts Bring API Discipline to Apache Kafka

Sandon Jacobs

Senior Developer Advocate at IBM

Sandon Jacobs
Open session

World Congress 2026 North America

September 25, 2026 · 14:50–15:20

Stage 6

Look What Java Can Do Now: Live-Coding a GenAI MCP Server with the JAQ Stack

Suren Konathala

Senior Engineering Leader, Marketing & AdTech, AI GTM & Digital Experience Platforms, Java x AI

Suren Konathala
Open session

World Congress 2026 North America

September 24, 2026 · 16:10–16:40

Outdoor Stage

When Humans Stop Writing Code: Rethinking Languages, Compilers, and Responsibility

Simon Auer

Organizer of flutter vienna meetup and CEO of marqably

Simon Auer
Open session

World Congress 2026 North America

September 24, 2026 · 11:40–12:10

Stage 7

Clean Rooms Demystified: Architecture and Patterns for Privacy-Safe Data Collaboration

Anurag Malik

Data Tech Lead @ Intuit

Anurag Malik
Open session

World Congress 2026 North America

September 25, 2026 · 11:00–11:30

Outdoor Stage

Loop Engineering: Designing and Observing the Loops That Run Your Agents With Opik

Abigail Morgan

AI Developer Advocate at Comet

Abigail Morgan
Open session

World Congress 2026 North America

September 25, 2026 · 12:20–12:50

Stage 9

Designing APIs That Survive AI Agents at Scale

Phani Pendurthi

Mastercard, Principal Software Engineer

Phani Pendurthi