Data-oriented design: Difference between revisions

Content deleted Content added
Line 7:
=== Contrast with OOP ===
 
The claim is that traditional [[object-oriented]] design principles result in poor data locality, especially if [[runtime polymorphism]] is used (which itself is especially problematic on certain processors). Although OOP does on the surfacesuperficially seem to 'organise code around data', the practice is quite different. OOP is actually about organising [[source code]] around [[data types]], rather than making the layout of individual fields and arrays convenient for specific functions. It also frequently hides layout details under [[abstraction layer]]s, whilst a data-oriented programmer wants to think about this first and foremost.
 
=== Other languages ===