Simplifying Java System Complexity through Data-Oriented Programming
Explore how adopting data-oriented programming in Java can reduce system complexity by separating data from behavior, moving beyond traditional object-oriented encapsulation to create more maintainable and efficient systems.

SouJava
1.5K views β’ Apr 6, 2021

About this video
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.
Bio
Yehonathan Sharvit has been working as a software engineer since 2000, programming with C++, Java, Ruby, JavaScript, Clojure and ClojureScript. He currently works as a software architect at Cycognito, building software infrastructures for high scale data pipelines. He shares insights about software at his tech blog, he writes technical books, he speaks at conferences and leads Clojure workshops around the world. He is the author of Data-Oriented programming, published by Manning.
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.
Bio
Yehonathan Sharvit has been working as a software engineer since 2000, programming with C++, Java, Ruby, JavaScript, Clojure and ClojureScript. He currently works as a software architect at Cycognito, building software infrastructures for high scale data pipelines. He shares insights about software at his tech blog, he writes technical books, he speaks at conferences and leads Clojure workshops around the world. He is the author of Data-Oriented programming, published by Manning.
Video Information
Views
1.5K
Likes
56
Duration
34:46
Published
Apr 6, 2021
User Reviews
4.5
(1) Related Trending Topics
LIVE TRENDSRelated trending topics. Click any trend to explore more videos.
Trending Now