The Post-OOP Paradigm
Kallahar writes "American Scientist has an article up about Computing Science: The Post-OOP Paradigm. The article has a great overview of how OOP works, and then goes on to a brief outline of the possible successors to OOP such as Aspect, Pattern, and Extreme Programming. Also a pretty picture of OOP Spaghetti."
a good definition for this piece of shit would be:
"an octopus made by nailing extra legs onto a dog"
there is no worse torture that being forced to use stl in your project!
c++ sucks!
OO is faggy and gh3y anyway. Seriously, who the fuck fucks with C++? C++ is the biggest load of shit ever hauled out of Bell Labs' pink fleshy arsehole. It's yucky and inconsistent and bloated. Why? Because it's fucking OO. Fuck polymorphism, encapsulation, reusability, classes, objects, properties, all that bullshit, because computers are not designed to simulate objects in the real world. They're designed to follow a fucking fixed set of instructions. I mean, seriously, what the fuck? OO is a shitty paradigm created for a shitty decade. Who needs it? Take the worst bits of C and add a bunch of bullcrap templates and shite and bingo - you have something to suck in otherwise promising talent to waste their pathetic lives on. C programming - good. C++ programming - gh3y. PHP programming - k-rad. Thank you for your time, unless you're an OOP programmer, in which case you should give up the day job.
Don't use it. Seriously, have you ever tried writing OOP? Tried using C++ or Java? Two shitty languages, both OO - coincidence? I didn't fucking think so. OO is just something for object oriented fanboys like Stroustrup to fap about when they run out of anime tentacle rape divx videos. Object orientation - what the fuck? Even the name of the paradigm is fucked up. Why orientation? What's the damn point? Just call it TOP - "The Object Paradigm" or some other 'amusing' acronym and be done with it. Why use C++ when at least C is vaguely intuitive and doesn't require a doctorate for you to be able to use it with any degree of safety? Seriously, you could get an eleven year old writing POSIX tools safely in C. When you consider how many people fuck up writing C when it's so damn easy, imagine what it's like when they try using C++ to beef up their salary, or, worse still, try learning it as a FIRST FUCKING LANGUAGE. They have no bloody chance. If you thought using gets(), using global variables, using void main(), not checking the return value of malloc(), not using free(), using casting too much to cover up shitty code - if you thought these were bad, just fucking think again. You use C++, the odds are stacked against you from the start. It's more inconsistent than the C shell and more bloated than glibc. The ANSI C++ specification is over 750 pages long and that stands to grow decade by decade. What are you going to do in 2040 when you find that the little project some idiot fresh out of university started at AT&T or Berkeley has grown and taken over entire operating systems and you have to maintain it, and it's STILL spaghettified because the little turd was following a structured programming mindset? You're fucked, that's what! By that time there'll be about 40 different specifications for it from three different sources, ranging in size from 30 pages to the size of "The Complete Works of James motherfucking Joyce". You want to spend 30 years of your life trawling through reams of dated specs and your shitty incomplete compiler's man pages to find those three little commandline options which will make everything work? And don't tell me that there will be a compiler which can properly implement the C++ standard, because THERE ISN'T a fucking internally consistent C++ standard which makes a scrap of sense. Just look at g++. That thing is a steaming pile of poo, crap and excrement. It brings tears to my eyes just looking at Richard Stallman bashing his head against his keyboard in frustration because the guys who came up with the ANSI spec and the guys who came up with the Single Unix spec can't agree that 'new' should do what it does, or that we can use // comments, or some other stupid shite like that just to keep shitty C or COBOL programmers in work for another 20 years. The future of OOP is the crapper. BSD isn't moribund, because it's written in C. However, Sun is so fucking dead, because they are the home of Java. Thusly, they're fucked. And the creators of X and Simula will be repeatedly buttbuggered with shards of glass and welding torches for being so incredibly short sighted as to even consider the idea of simulating objects and their properties on a computer. Really! What the FUCK?! Why are we pretending that we can comprehend how to use some wheelbarrow of faeces which tries to pretend it can grok the real world and its complex interrelationships; you want to do that, go the fuck outside for a change! Look through a telescope, skim an encyclopaedia, listen to a poem - don't write shitty languages and shitty code just to try and prove your point. C++ weenies are the equivalent of macho sexist rednecks. C coders are the kind of people who will walk over water in order to heal an injured swan. OOP isn't big, it isn't funny, and it isn't clever. It's incredibly gay and when you use OOP, people get hurt, Jesus cries, and God kills a kitten. Just look at Microsoft - they wrote all of their OSes for the last ten, fifteen years using OO, and look at how stable they are. MS is teetering on
Your initial example of 'students (who) objectize everything' is also flawed. Part of the trick to OO programming is that you must place more emphasis on arriving at proper abstractions. In general a properly abstracted system will require quite a bit less work than the equivalent procedural one.
I find that abstraction is relative. The proper taxonomy or interface for one need is often not the proper one for another need. Different users want to handle the same info in different ways.
Besides, how does one measure "properly abstracted"?
OO thinkers have focused so heavily on hiding implementation and implementation changes that they have lost sight of factoring, simplifying, and managing the changes in *interfaces* also. IOW, they fail to apply the same design rules to interfaces that they do to implementation.
For example, duplicate implementation is (properly) frowned upon, but duplicate interface elements and patterns are rampant in OO interfaces and API's and no OO fan seems to give a flying shit about such bloat and repetition. They are blinded by too narrow OO dogma IMO. They are so focused on fixing X because the dogma says X is super bad, that they ignore problems in Y.
Table-ized A.I.