News for hackers. Stuff that matters.
Re:Data-oriented design or why you might shoot yourself in t... by jerf on Monday June 28, 2021 @03:05PM (#27666264)
The tree under your reply proves my point. There is no one set of OO principles. This thread identifies at least two, the original Kay principles and what I wasn't sure you were going to name, which is what I'd call the outdated 1990s ideas of OO. Then there's today's idea, which is probably pretty close to what I said in my post and is exemplified by duck-typed dynamic languages and a lot of modern languages like Go and Rust. That's at least three, and that's staying fairly broad; if we start quibbling about arcane details the count only goes up.
Re:Data-oriented design or why you might shoot yourself in t... by mytailorisrich on Monday June 28, 2021 @03:38PM (#27666788)
> what I wasn't sure you were going to name, which is what I'd call the outdated 1990s ideas of OO.

I'm sorry but this is getting surreal.

I named the standard OO principles and concepts which are very much valid and alive today, though of course how they are applied (or if they are applied at all) varies from language to language. Claiming otherwise is absurd. If anything this whole article and thread show that too many people are confused by the concepts of OO principles (if they know what that means at all), programming languages (that may or may not implement some of these principles), design practices/patterns (how to come up with a model of objects): these are all different things. Certainly selecting objects that reflect real-life entities is not an OO principle, for instance, but rather a design practice (good or bad, it depends).

In my team we do C exclusively and follow OO principles as much as practical. Any software engineer worth their salt has a good idea of what that means.