- This event has passed.
Reduce system complexity in Java with Data-Oriented programming
April 6 @ 19:00 - 20:00
Traditionally in Java, we mix data and code in objects. While being beneficial in some cases, data encapsulation has a tendency towards systems with complex class hierarchies. Moreover, we introduce complex synchronization mechanisms to protect the state of our objects from being mutated or corrupted by other threads, making our code harder to maintain. Over the years many design patterns have been invented to work around this complexity.
Data-Oriented programming is a programming paradigm that inherently reduces system complexity by drawing a clear separation between code and data, and representing data with generic immutable data structures.
In this talk, we illustrate with practical examples how to apply Data-Oriented programming principles in Java, using smart Java annotations and latest Java features. We show how the application of Data-Oriented programming principles in a Java production system tends to reduce system complexity and make the system easier to maintain.