Data-Oriented Design in Practice
Offered By: code::dive conference via YouTube
Course Description
Overview
Explore data-oriented design as a superior alternative to object-oriented programming in C++ for high-performance applications in this code::dive 2018 conference talk. Delve into practical examples from modern web browsers, comparing OOP systems in Chrome with the data-oriented approach in the HTML renderer Hummingbird. Learn how to redesign real-world C++ OOP systems using data-oriented principles to achieve better performance, scalability, maintainability, and testability. Examine CSS animations, animation controllers, and style solving to understand the benefits of data-oriented design. Analyze performance, scalability, and testability improvements, while also considering potential downsides and appropriate use cases for OOP. Gain insights into applying data-oriented design in game development, high-performance computing, and real-time systems.
Syllabus
Intro
Agenda
Objectoriented design
Dataoriented design
Good objectoriented
CSS animations
CSS animation definition
Animation class
Animation code
Update method
If content
Updating animations
Interpolate
Animation
Recap
Another approach
Animation controller
Two approaches
Arrays
Avoid branches
Adding an API
In the controller
Key points
Style solving
Data oriented design
Gather children
Set
Classification
Nodes
Results
Performance analysis
Scalability
Conjoint operation
Testability
Modifyability
Downsides
When do we objectoriented program
Conclusion
QA
Taught by
code::dive conference
Related Courses
From Developer to SW Architectcode::dive conference via YouTube Stop Writing Test Doubles You Are Using
code::dive conference via YouTube You Can Do Better! Presentations That Are Captivating
code::dive conference via YouTube What C and C++ Developers Can Learn from Rust
code::dive conference via YouTube Beautiful Python Refactoring II
code::dive conference via YouTube