Originally posted by Luke_Wolf
View Post
Announcement
Collapse
No announcement yet.
Rust Now Prefers Using The GNU Gold Linker By Default
Collapse
X
-
Originally posted by Ericg View Post
Oi, Luke, cool it. Mods do exist on these forums, as infrequent as they are.
- Likes 1
Comment
-
Originally posted by Luke_Wolf View Post
My patience with anti-OOP fools has run rather much threadbare...
I'm not saying Ogre is useless or anything, but it was not crafted with such things in mind. What I really wanted to say was, that Ogre (rest assured there are a myriad of other cases) that have reached a complexity where OOP starts becoming inefficient. Properly identifying roles and responsibilities (let's say in an STL-like manner, where allocators are parameters of containers, and iterators are responsible for access, etc.) you can reduce the number of members at the cost of composing them into entities that implement some feature as a union. At best, your class hierarchies will be balanced and every class will have roughly the same number of members. However, as you are reaching higher and higher levels, your objects grow in size uncontrollably, even if in the given scenario you know you will be using only a very small subset of the classes capabilities (members). In GPGPU and at a very low level, this effect is demonstrated through AoS vs. SoA, however outside data-parallel algorithms it would be more adequate to call it DOD.
Creating thin views that group some entities together for the lifetime an operation without having touch the entire object and load it into cache is something that is not possible, or is simply very hard to achieve with a classic OOP mindset.
I did not mean to start a flame war, just wanted to make a point, which seems I did not back up sufficiently.
Originally posted by Luke_Wolf View Post
Proper OOP dictates that you should use no more than 5 levels of derivation
Comment
Comment