About this talk
This talk, presented by Birgit Kratz, an Independent Software Engineer, delves into Data-Oriented Programming (DOP) in Java, advocating for a data-first programming model as an alternative to conventional object-oriented design. The session highlights how modern Java features, including records, sealed types, and pattern matching, facilitate the modeling of immutable data structures while enforcing compile-time constraints to prevent invalid states. The speaker discusses core principles of DOP, such as maintaining data without embedded behavior, ensuring immutability, and validating inputs, which collectively enhance the readability and correctness of data-centric systems. Practical applications of this approach, such as state machines and JSON processing, demonstrate a reduced complexity compared to traditional object-oriented implementations by centralizing logic through pattern matching.