Data-oriented design stands in direct conflict with object-oriented design principles.
While object-oriented design focuses on modeling the world using Objects, the data-oriented design focuses on the data and the algorithms that manipulate the data, where data dependency, alignment, and memory access patterns are the most important things.
This in turn can increase performance when applied correctly.
Since data-oriented design tries to use very basic language features this kind of design can lead to a simpler codebase where abstractions are only created by accretion when the code is matured and the problem understood.
This lecture will focus on data-oriented design for business applications (and not games) since there are lots of articles that focus on games but the's virtually no information on how to apply it to applications, Bartosz's talk aims to change that.