Game Programming and Development Tools

What do you think about OOP? – Lazarus

Lazarus

Member

Posts: 1668
From: USA
Registered: 06-06-2006
I started programming with procedural languages, and when I encountered OOP, I was like "...huh?".
I read alot about it though - slowly began to understand how it worked - and then ran across this:
http://www.geocities.com/tablizer/oopbad.htm

I've read several other denouements of OOP online - I'm wondering what the programmers on here think about OOP.

jestermax

Member

Posts: 1064
From: Ontario, Canada
Registered: 06-21-2006
OOP is delicious! i love using it and i think it brings a ton of organization to code, although in the wrong hands it can be dangerous.

------------------
Visit my portfolio (and check out my projects):
http://Jestermax.googlepages.com/

Mene-Mene

Member

Posts: 1398
From: Fort Wayne, IN, USA
Registered: 10-23-2006
It takes a bit of work to understand, but I kinda like it. I'm only a tiny novice but it makes you think of your programs more realisticly in defining what they can do, and making it so that everything is an action rather than an operation.

I've not read the article, but there's my input with <iostream> included.

------------------
MM out-
Thought travels much faster than sound, it is better to think something twice, and say it once, than to think something once, and have to say it twice.
"Frogs and Fauns! The tournament!" - Professor Winneynoodle/HanClinto

I reserve the full right to change my views/theories at any time.

CPUFreak91

Member

Posts: 2337
From:
Registered: 02-01-2005
When we started using OOP in our Pyweek4 game (midnight) we were able to code much faster, and our code was more efficient.

------------------
All Your Base Are Belong To Us!!! chown -r us ./base
"After three days without programming, life becomes meaningless.'' -- Tao of Programming Book 2

"Oh, bother," said the Borg. "We've assimilated Pooh."

"Socialism works great... if there are no people involved." -- Pastor David Ginter, Union Church of Guatemala.

My Programming and Hacker/Geek related Blog

SSquared

Member

Posts: 654
From: Pacific Northwest
Registered: 03-22-2005
I am definitely an OOP fan.

I didn't read too much, but the article sure puts a bad light on OOP. It would certainly scare away someone who may want to learn OOP. I wouldn't let the articles you read deter you from learning and developing in OOP. It is definitely very desirable to have this knowledge in the workplace.

jestermax

Member

Posts: 1064
From: Ontario, Canada
Registered: 06-21-2006
Sorry to add more comments here, but i think that OOP is more intuitive then procedural programming. We think and see in terms of objects and so once you grasp the concepts and come to a certain realization, it's not that hard to adapt things into programming.
For example:
Crayons = a strategy pattern. Each crayon has a similar interface; you pick it up and draw with it (possibly eat it too). You can change crayons and each one has a different effect (different colours).

TADA! instant OOP!

------------------
Visit my portfolio (and check out my projects):
http://Jestermax.googlepages.com/

InsanePoet

Member

Posts: 638
From: Vermont, USA
Registered: 03-12-2003
quote:
Originally posted by CPUFreak91:
When we started using OOP in our Pyweek4 game (midnight) we were able to code much faster, and our code was more efficient.


Yeah Midnight!

FTW =D

btw, we are continung production of Midnight, if there is anyone interested in contributing, we've got work needing to be done! =D


http://media.pyweek.org/dl/4/Gang_of_6/midnight-menu-screenshot.png


http://media.pyweek.org/dl/4/Gang_of_6/midnight-screenshot.png

------------------
"I find myself a desire which no experience in this world can satisfy, the most probable explanation is that I was made for another world!"
-C. S. Lewis

[This message has been edited by insanepoet (edited April 11, 2007).]

[This message has been edited by insanepoet (edited April 11, 2007).]

jestermax

Member

Posts: 1064
From: Ontario, Canada
Registered: 06-21-2006
hey wow, i like the character sprites you're using! they look stylized and very nifty
(and i actually thought that 'midnight' meant you started using it at midnight, hehe)

------------------
Visit my portfolio (and check out my projects):
http://Jestermax.googlepages.com/

InsanePoet

Member

Posts: 638
From: Vermont, USA
Registered: 03-12-2003
http://pyweek.twobrotherssoftware.com/


our webpage is pending, hopefully in 2 weeks. But you can view the short story that was intended for pyweek at:
http://pyweek.twobrotherssoftware.com/

For this production beyond pyweek I am going to be expanding the story a bit.


The sprites, I am a fan of stylized nastalgic gaming. =D

------------------
"I find myself a desire which no experience in this world can satisfy, the most probable explanation is that I was made for another world!"
-C. S. Lewis

ArchAngel

Member

Posts: 3450
From: SV, CA, USA
Registered: 01-29-2002
OOP is definetly a superior form of coding.
easy to implement in team format, easy to visualize, easy to read, easy to debug.

------------------
"The generation of random numbers is too important to leave to chance."
Soterion Studios

Briant

Member

Posts: 742
From: Stony Plain, Alberta, Canada
Registered: 01-20-2001
OOP == GOOD.

No, it's not perfect, nor is it necessarily "the best" for any specific job. It *is* a great way of breaking down and implementing most projects - as long as it's used properly.

------------------
Brian

"OOP programmers have a lot of class"

Check out this webhost! Fantastic prices, features and support!

NetCog

Member

Posts: 149
From:
Registered: 06-15-2006
OOP definitely good, better in most cases, even best in some...

I could see some reason for procedural....however it's far far easier to utilize libraries and OOP (as I understand it atm) than redoing every command, function, and event for each different project.

The Web with HTML, CSS, JS, or any more intensive scripting is very much OOP...or at least OOP to the level that I understand. The idea of putting

<style> </style>
in every HTML tag, or even simply attribute=attributevalue....ugh!

Much MUCH better to reference or link in content or structure you want. I see OOP as similar, separating "content" from "event" from "design/structure" (even certain elements of separating design from structure).

p.s. The point I'll give for procedural (or in my case merging stylesheet w/ the html page w/ the javascript doc) is if you are doing small and/or unique projects which will have little to no change or applicability in another project -- you might want everything on one page (procedural). (That's ignoring issues of load times since I think it's different w/ web than it is w/ compiled.)


Note: this is coming from a beginning web programmer w/ some limited experience w/ VB6, C++, python.

Jari

Member

Posts: 1471
From: Helsinki, Finland
Registered: 03-11-2005
Definetely better than self centered programming.
See just one simple example:
getPlayerName(player) vs player.getName()
(i'm partly kidding here and that really is just one small note on c style vs c++ (OOP) style.)

------------------
Psa 32:5 I acknowledged my sin unto thee, and mine iniquity have I not hid. I said, I will confess my transgressions unto the LORD; and thou forgavest the iniquity of my sin. Selah.

[VoHW] (Help needed) [Blog] - Truedisciple (mp3)

dartsman

Member

Posts: 484
From: Queensland, Australia
Registered: 03-16-2006
I think he is ok... I met him a couple of years ago... didn't agree with him at first, but he kept pointing out how he was right...

(been a long day at work :P)

------------------
Junior Programmer www.auran.com
Quality Assurance Lead www.rebelplanetcreations.com

steveth45

Member

Posts: 536
From: Eugene, OR, USA
Registered: 08-10-2005
Well, OOP is how programs are made. Sure, you can try to avoid it, but good luck getting a job. Games, desktop applications, whatever, it's all made with OOP. You can't ask for a better programming paradigm.

------------------
+---------+
|steveth45|
+---------+

jestermax

Member

Posts: 1064
From: Ontario, Canada
Registered: 06-21-2006
i would like a better programming paradigm please.

------------------
Visit my portfolio (and check out my projects):
http://Jestermax.googlepages.com/

HanClinto

Administrator

Posts: 1828
From: Indiana
Registered: 10-11-2004
Right now, I have a sign pinned to my cubicle wall.

       The difference between object-oriented
and procedural programming:

Procedural: shoot(bullet, foot);
OOP: bullet.shoot(foot);

If you don't know how to program,
having the bullet know how to shoot itself won't help.

That about sums up anything else I might want to say.

--clint

[This message has been edited by HanClinto (edited April 12, 2007).]

jestermax

Member

Posts: 1064
From: Ontario, Canada
Registered: 06-21-2006
yeah but wouldn't you like to shoot yourself in the foot with style and better design?

All in all: be smart, don't try to cut wires with a hammer; although it still works (trust me on this) it's not as efficient as a pair of side cutters.

------------------
Visit my portfolio (and check out my projects):
http://Jestermax.googlepages.com/

Lazarus

Member

Posts: 1668
From: USA
Registered: 06-06-2006
quote:
Originally posted by dartsman:
I think he is ok... I met him a couple of years ago... didn't agree with him at first, but he kept pointing out how he was right...


Oh - you know the guy personally?

dartsman

Member

Posts: 484
From: Queensland, Australia
Registered: 03-16-2006
more of a love hate relationship... jk

------------------
Junior Programmer www.auran.com
Quality Assurance Lead www.rebelplanetcreations.com

Matt Langley
Member

Posts: 247
From: Eugene, OR, USA
Registered: 08-31-2006
I'm a huge fan of OOP, though I very much dislike languages and systems that force you to only use OOP =0

------------------
Matthew Langley
Lead Documentation Engineer
GarageGames

JeTSpice
Member

Posts: 433
From: La Crosse, Wisconsin, USA
Registered: 06-10-2006
When I was born, I was OOPing naturally. But the complexities of life forced me to adopt tunnel vision. Now, I'm only able to travel along a simple path, or go back from whence I came.

Einstein had 7 suits of the same style. He couldn't OOP.

Don't give me more than 2 choices at once. In Baskin Robbins, I have to compare the first ice cream to the second to determine which is better, then compare the winner to the third ice cream, and so on to 31. It takes a long time. If someone were to introduce me to ice cream #17 while I'm on #4, I would have to ignore them or start over. I *might* be able to use a mental note (such as "wife_flag = 1") so when I get to ice cream 17, I could then ask the person what it was they wanted.

Now, I only eat one type of ice cream. The rule is "Whatever matches my suit."


OOPing to me is like having a bank account with a checkbook, a debit card, and ATM. Give one to each family member and guess your balance in a week. And I have no frame of reference from which to say this--it's merely a fear-inspired superstition.

The original home computers were project boxes built by hobbiests. I imagine OOP would be like this: one enthusiast gives a show-and-tell of his latest LED display, and another one hooks his box up to that guy's to "see" what happens. Maybe that's where it got it's name. I don't know.