I hate that schools basically teach students to over use classes for everything especially by using Java as a teaching language and then they get into the real world or grad school and we have to unteach them those terrible habits.
I’m so glad a lot of the newer languages (Rust, Go, Zig, C3, V) don’t have classes in them at all.
Tbh if the average grad school student overused object oriented stuff they would produce vastly better code than the status quo.
I’m currently taking the very last CS class my major requires. I can’t wait to leave OOP behind and focus on hardware completely.
You did the right thing. OOP was invented by people who were worried about their job security, to obstruct others from understanding their code.
OOP is pretty readable though. What would be the alternative, functional programming with no ORM?
Right, most things are a fine thing in moderation.
Obfuscation Oriented Programming as I call it
Strings are Objects, Doubles are Objects (that are than unboxed into primutives doubles)…
Good, OOP can suck my balls
Balls.suck() is the correct syntax.
Don’t you need to declare new Balls() first? Or do you suck() Balls static?
BallsFactory ballsFactory = new BallsFactory(); ballsFactory.setSuckable(true); Balls balls = ballsFatctory.create();
All of this is okay, but it’s not production ready. This is what real production code looks like:
SuckableFactory suckableFactory = new SuckableFactory(); Suckable balls = suckableFactory .setShape(SuckableShapes.round) .setCount(2) .create(); SuctionProvider mouth = SuctionProvider.getInstance(); SuckerFactory suckerFactory = new SuckerFactory(); Sucker sucker = SuckerFactory.create(): sucker.setSuctionProvider(mouth); sucker.setSuckable(balls); sucker.setIntensity(SuckerSuctionIntensities.medium); sucker.suckSuckable();
Python port:
from ballsucker import suck suck()
Or I didn’t using the correct naming convention!