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 · WWC 2023

1:13 min

Applying data-oriented programming for concise java syntax

Balkrishna Rawool Balkrishna Rawool · WWC 2024

2:19 min

Exploring pattern matching features and constructs in java

Balkrishna Rawool Balkrishna Rawool · WWC 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 · WWC 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

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

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

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

Designing APIs That Survive AI Agents at Scale

Phani Pendurthi

Mastercard, Principal Software Engineer

Phani Pendurthi
Open session

World Congress 2026 North America

public void saveMoney(AI): The Developer's Guide to Unit Economics

Hrushikesh Pokala

Senior Software Engineer Lead at Equifax

Hrushikesh Pokala
Open session

World Congress 2026 North America

The Broken Rung: How AI is Rebuilding Software Development from the Ground Up

Tomislav Tipurić

Chief Technology Officer, Nephos

Tomislav Tipurić