3 ms·
Video game programming, where OOP actually maps pretty well to the problem domain, would beg to differ.
by falcolas 6y ago
Video game programming, where OOP actually maps pretty well to the problem domain, would beg to differ.
- ioseph 6y agoAgreed, never understood the appeal for something like web applications but as soon as I tried game Dev it feels like the perfect fit for lots of entities with their own internal state.
- topkai22 6y agoThere are many enterprise web applications that have large amounts of internal state, so I think OOP techniques work relatively well there. Game programming is a lot more fun though.
- packetlost 6y agoVery well architected OOP is fantastic to work with/read on any moderately complex application. The problem is very few people know how to architect an application well, regardless of OOP or not.
- brundolf 6y agoEven then, from what I've heard the trend is turning sharply away from inheritance and towards composition of components and systems. Maybe you could argue that that's still OOP, but it's not what most people mean by the term these days
- falcolas 6y agoPersonally, when I think of OOP, I think of objects which combine state and the code to modify that state. The details of how it’s implemented - inheritance vs. composition - strikes me as more of an implementation detail than a vital difference.
- brundolf 6y agoECS, the emerging game pattern, breaks off the state-modification code as well
- est 6y agoOOP should be applied to a specific domain, namely GUI and video games. In other cases it's a meh.
- cliftonk 6y agoECS (data-oriented programming?) is slowly taking over in the video game industry as a clearly superior paradigm. i did some UE4 programming recently, and as powerful as that engine is, the super-heavyweight object/inheritance system was the source of almost all unnecessary complexity i dealt with
- peppery-idiot 6y agoI was under the impression OOP with classes is not cache performant when doing common game engine tasks like mass updating the velocity or position of objects.