Why is OOP so shit? Is every language that implements it just do a bad job or is it just shit?

Why is OOP so shit? Is every language that implements it just do a bad job or is it just shit?

OOP is all about needlessly abstracting and fragmenting programs into twisted webs of dependencies and interfaces that no human can navigate without HEAVY use of IDE. It is done this way because Pajeet doesn't understand that he can't just pass a number into a function that needs a string. So you have the whole IDE start yelling at him when he does.

This.
Fucking street shitters.

it's a bad idea as taught

Learn UML

Everything will become self evident

>UML
>not worthless

>OOP
>not a mistake

OOP made me quit programming. I'm too much of a brainlet for this shit.

>organized code is bad

The purpose of OOP is separating data and code and the ability to reuse code by writing for interfaces without needing to understand the underlying implementation. I can agree that sometimes it is overused and needlessly complex (JavaEE) but if you cant understand the benefits of this style of programming you're more of a brainlet than pajeet.

Next time you want to go someplace you aren't familiar with, do not use maps, do not ask for directions.

How does Java EE make it needlessly complex? I want to see OOP done right.

Next time you use a map, make your own with crayons then follow it.

question: if you are not using OOP. how the fuck are you organizing large coding projects. you are doing some proto version of it anyways right?

I dont know honestly. Thats just my opinion. I havent used it all that much so I probably should not have said that.

I fail to see the relevance of your analogy. It seems you are much smarter than me. Can you explain it to me?

people took it way too far, i don't even know what real world problem class access modifiers are supposed to solve, just check an ENCAPSULATION box in the OOP bible

>brush guard on a camaro

Bruh

It's called static guarantees you dumb fuck.

Do you know what that thing been through

To keep other idiot programmers, you and me included, from misusing methods we don't want the outside world to rely on. The moment the outside world relies on it, you're responsible for never changing it again.

What exactly is wrong with OOP? You mean to tell me other programming paradigms don't suffer from complexity in their own way? You sound like a newbie who has never worked on a large project.

The only OOP/can tolerate I know is smalltalk.

How do I get a job

lol show me a compiler using these hints

great for when you wanna drive your camaro through the brush :^)

so in other words they tried to solve a problem with humans and human organizations by putting a feature in the language? when has that ever worked? Making things foolproof just provides evolutionary pressure to generate bigger fools.

>Why is OOP so shit?
It has it's places for use.

>Is every language that implements it just do a bad job or is it just shit?
You don't need to use OOP features in an OOP language.

There's places where it's a good solution. But there's also places where it's a terrible solution, and many programmers and languages don't seem to realize that.

Rust has OOP.

Rust explicitly does not do Java/C++ retard OOP.

OOP sure is shit and will get in the way when all you're trying to do is jack off to your psuedo over complicated hello world also just like a framework will get in your way also like jamal getting in your way in the welfare line you'll soon be in

fpbp

OOP is fine when you use it correctly and not obsessively. That all depends on how well into the future you can vision your program turning out.

For example, using highly complex inheritance trees can be extremely complicated and annoying. Sticking strictly to OOP standards also has the natural tendency to be verbose, especially when a pragmatic approach would have been much quicker. I've found that combining OOP and structural programming together to be the best/easiest.

Smalltalk is only good oop

If you repeat the same variable / function / string / whatever more than once, its time to abstract it. Like any tool in the wrong hands, the freedom can be abused such as using a hammer to kill people. with object oriented, if you take this Do Not Repeat Yourself law to the extreme, your dynamic linked libraries start to drown in components.

normal person
>something confuses me
>I better stop speaking about it or properly figure it out
autisitc Sup Forums poster
>something confuses me
>I better try to come up with half-assed reasons why it's shit, btw everyone is a retard

Do any of you dismissing OOP as garbage hate the linux file functions? Because that is OOP. You request to open a file via a path, some "factory" returns you a FILE interface, which allows you to write/read to different filesystems as if they're the same. Thereby abstracting the underlying differences between filesystems.
Just because it can be overused does not mean it's a bad idea.

everytime I think "maybe I should use an OOP language" my next thought is almost always "but whats the fucking point?"

So your code can be maintained, extended, and scaled later down the line by other programmers.

OOP and abstraction are not the same thing.

The core of OOP is abstractions though. And all those people mocking AbstractBeanFactories are mocking the extreme and not the normal case. Polymorphism, separation of data and code(via interfaces, or simply private members) are all good ideas. Sure creating a 12 level deep class hierarchy is retarded. But the core ideas aren't and OOP is not inherently shit.

no, oop is fine. you're probably a nerd in highschool learning forth or a hacktivist coding lua on a gentoo notebook. kys faggot.

It is also the easiest thing for pajeets to grasp.

Not gonna argue that

A file is already a (virtual) object.
That's why it makes sense to represent it as one.
And you can do this is pretty much any language.

Where OOP fucks up is insisting that everything is an object.
That's where you have to jump though hoops to comply to OOP - that's what people hate not representing objects as objects.

Those were some specific examples, but I agree.

What isn't an object then?

Smalltalk's OOP is nice.
Ruby as well, though the community is almost as bad as Rust's.
The problem with OOP is that the most popular languages that use it handle it badly (C++, Python, Java)