Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

OO vs procedural

Name: Anonymous 2007-03-01 4:30 ID:WOeEZFMF

Tell me about it.

Name: Anonymous 2007-03-02 18:50 ID:uYejW+YA

>>21
No matter how hard you try, no matter how many processes you put in place, you will make mistakes, and some will get through.
No shit, Sherlock! That's why you test your shit. You will make mistakes, regardless of static or dynamic typing. Static typing will catch 2 errors and fuck you in the ass 20 times. I'd rather spend twice as long debugging a dynamic program, because I'll take one sixth as long to write it. And no, you are the unexperienced fag. Because of the higher abstraction, you make less mistakes, as you don't have to waste your time micro-managing your types, and you require less side effects. Correct programs are more obviously correct and more easily provable.

Whenever I write a sizable C module, I spend a considerable amount of time debugging it because no matter how hard I try, I often make mistakes. On the other hand, I've written Python modules the same lines long (implementing 10 times more functionality, and written in a bit less time) that work right from the start or right after fixing a couple of syntax errors. The logic is almost always correct, and it does what I want, even when the module consisted of implementing funny classes with lots of double-underscore methods.

Moreover, you often find higher abstractions and unanal typing yields far more useful results. Many times after doing some work one of my mates would say "wait, now they say we need X besides Y, back to work", then I am "...come to think of it, X will work just as well, I hadn't thought about it when I wrote it to support Y".

Besides, the waterfall model went out of vogue ages ago. "design and specify properly"? Haha, right.
Who said we work on a waterfall model? You said it, not me. I work on an incremental life cycle. That's what I was talking about in the previous paragraph. Sometimes you'd need to update some component, then discover you don't have to because you haven't been anal about things and your new object or function still quacks like a duck (or can be taught to quack pretty easily), which is all you really needed.

And again, I'm employed and use dynamic languages almost exclusively at work. I'm lucky to have a manager who understands his shit. He did start a couple of projects with Java before I was hired, but after seeing how could I get shit done and modified pretty quickly without turning it into a mess, and seeing how he could very easily understand what I was doing, while Java shit he knew better would always look like a piece of shit, he ditched Java. At first, he would say "now we need this, I hope we can have it by the end of the week", and I would reply "WTF one week, that'll be done by tomorrow, testing and all. Anything else?". It's up to you to believe so, and it's your time to waste if you use static languages.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List