3 ms·
ECS as they are using it in this blog is about Data Oriented Design. It's not just OOP plus favoring composition over inheritance. DOD explicitly advocates sep
by learc83 8y ago
ECS as they are using it in this blog is about Data Oriented Design. It's not just OOP plus favoring composition over inheritance.
DOD explicitly advocates separating data from behavior, and is strongly opposed to OOP in general.
- LiterallyDoge 8y agoJust so I understand you right: they're advocating global functions to operate on predictably similar data structures? If that's the case, it seems like you'd want some of them to be object-oriented, and some not.
- learc83 8y agoEach system tends to operate on different sets of data which don't tend to be very similar, and systems may operate on multiple data sets. You could build each system as an object, but you wouldn't want to store the relevant data structures within that object because other systems will likely need to use those data structures as well. The entire architecture is predicated on separating data and behavior. Yes you can build an ECS system using classes, but nothing about it fits into what you'd call OOP.