OOP is the gender studies of software engineering

OOP is the gender studies of software engineering.
What are we gonna tell our grandkids 50 years from now when they ask us why we fell for the OOP meme?

Attached: oop.png (540x486, 14K)

Other urls found in this thread:

docs.python.org/3/reference/datamodel.html
twitter.com/SFWRedditImages

all of the objects there are leggable so you must put them into the leggable class

>legs = 0
>fleas = 0

See, the reason you hate on OOP is that you don't understand how it works - for example, you're not supposed to initialise virtual fields.

Why does this board have such a hateboner for OOP?

OOP has some merit, but is overrated and provides almost as many problems as it solves in general use.

I disagree

>What are we gonna tell our grandkids 50 years from now when they ask us why we fell for the OOP meme?
>it's what brainlets use, son. That's why it got so popular

∧_∧ / ̄ ̄ ̄ ̄ ̄
( ´∀`)< cat
( ) \_____
| | |
(__)_)

hating OOP is a meme
all this board understands is memes

OOP isn't useful if the longest program you've written is twelve lines of python.

>Be Python List
>adding an item: method on my instance
>get my length? Fuck you, outsource that shit to a free function: len(list)

the key is to arbitrarily make use of the paradigms wherever you are

>Not creating your objects via aggregation of proton, neutron, and electron classes.

Nobody actually uses inheritance anymore.

What's funnier about Python is that len(list) is an alias for list.__len__(), which makes even less sense to me. Similar is true for most builtins like map, filter, etc. It's like Pythonlets like to pretend they're using a procedural language, so we're stuck with randomly prefixing methods and reading code backwards.

What does OOP mean? Polymorphism? Inheritance? Vtables?

>is that len(list) is an alias for list.__len__()
the more you know

It gets way crazier than that: docs.python.org/3/reference/datamodel.html

OOP in general boils down to small amounts of syntax sugar and it comes at a cost of performance drop. Simply using the objects paradigm encourages data setup that runs poorly on modern machines. Data driven design superceded OOP a while ago.

Memes, the DNA of the soul. Of this board.

in 20 years we will be post coding and thus everyone will just think functionality into existence

There is no good alternative. The people who bitches about OOP in Jow Forums have no jobs.

OOP is a decent way to organize methods. Be privileging the type of the first argument It makes completion easy and fast, and it works okay for most straightforward problems.

Granted that wasn't really the point, and most of the abstraction that OOP tried to do was garbage, but it's kind of useful anyway, even if in a hacked-up way. It's awkward for some problems, like making compilers or interacting with databases, but it's a decent default, and solidly usable if you still have lambdas available.

>eh it's okay

OOP is ok, certainly more than a buttload of freefloating functions like on C. As long as you keep your inheritance tree relatively flat (interface + production classes, maybe children, that's it). If you wanna make something akin to ROOT, where every single minute tweaks require creating new class, giving you something looking like a family tree up to 1500s, then you're doing something wrong.

Attached: CY3VcpdUkAE9dum.png (1200x529, 250K)