3 ms·
game development seems to be moving away from OOP and towards entity component systems and data oriented design. i've heard arguments that OOP's killer applicat
by jeffffff 6y ago
game development seems to be moving away from OOP and towards entity component systems and data oriented design. i've heard arguments that OOP's killer application is desktop guis, which i could buy, but those become less and less relevant daily. (caveat: my experience is entirely in back end and low level software and anything i say about front end or ui development should be highly suspect)
- meheleventyone 6y agoYou can still program in a data oriented manner using OOP. It is after all just about watching data access patterns in view of the hardware constraints and organizing along those lines. What there actually is in game development is a definite wish for a simpler language than C++ and dislike of many of the newer parts of it.
- dllthomas 6y ago> entity component systems Nitpick, but I'm not sure this is the correct plural. As you may very well know (but just in case, and for others), the "system" in ECS doesn't describe ECS as a whole, but another part of the model - you have entities, attributes of those entities, and systems that operate on those attributes. That said, I'm not sure what I'd suggest instead. "Entity component system systems" is obviously terrible. Just not pluralizing probably works, here? or "towards the entity component system pattern"? ... shrug
- tsimionescu 6y agoI think the point was that game development is an inherently stateful domain, which ECS recognizes (if anything, ECS is more stateful than OOP, not less). In contrast, using a pure FP language would probably create a lot of friction with many common styles and even algorithms used in games programming (think about how ugly and out of place actual quicksort looks in Haskell).