Hi Thomas,
Thank you again for trying to explain object oriented programming. I just
don't get it. You know 33 years ago when I drew up my first flow chart and
later turned that into if, then, goto, gosub, return, open, print, close, get,
put, input, peek, poke and stuff like that, that is what I loved and how I see
games in my head and still do. I do think that you taking college programming
courses and being forced to learn and program how they wanted you to does make
a difference. I have been told by many college graduated programmers that my
style of coding is just wrong, but that it does work and is stable. So for as
long as I am able to, I will program the way that I want to and have learned
works.
----- Original Message -----
Hi Jim,
I don't think being self taught is really the problem. I just don't
think the concept was explained to you in down to earth language. There
is nothing difficult about object oriented design, but is a bit mor
abstract than structural design.
In OOP, object oriented programming, you program around the idea of
people, places and things. A game character is an object. A gun he/she
is carrying is a object. The game world he/she might be in is an object.
Now, that you know what objects are you need to collect your functions
and variables in a way that describe that person, place, or thing.
The way we do this is through what is known as a class. A class contains
all the variables, functions, and data which describes and stores info
about your object whatever it might be. Instead of having a million
global variables like in structured programming, you may have a few
variables in various classes that hold data for all of your objects.
One of the great uses of object oriented design is that several objects
of the same kind can share variables which in structured design is
impossible without overwriting the data. For example, Character.X and
Character.Y stores the values for the player's location, and all
characters can use those X and Y variables by proceeding the variable by
the character's object name such as Sally.X and Joe.X.
Unfortunately, for structured programmers all modern languages like
Java, Visual Basic .Net, C# .Net, C++ .Net, etc are all 100% object
oriented The days of the structured programmer is coming to a close.,
and has been fading out for years.
In fact, Visual Basic 6 wasn't totally structured programming as it does
have some simple classes, and oop design elements in it. It was just
that most Visual Basic programmers didn't get too heavy into oop back
then, and it's oop design didn't have some of the more advanced features
like Java had.
If I seam against VB 6 it is for a rational reason. A programmer can't
survive in any other language outside of Visual Basic 6 without an
understanding of object oriented programming. My feeling is since a new
developer will eventually need to know oop they might as well get right
into a oop language like C# .Net, Visual Basic .Net, and learn it right
off the bat. It makes learning everything else after that much easier.
In my own case I came to know how to do good oop design back when I was
taking Java. I was freeked out at how different the style of programming
was, but once I learned the concepts behind it I never had problems
learning any other language. C# .Net, Visual Basic .Net, object oriented
Python, all were easy to learn and pick up because I had learned the
main core concepts of how languages work and programs are to be coded
using object oriented programming and design. I have discovered that it
is concepts and terminology that counts more than the language itself
when it comes to learning to program.
Jim
Are we having fun yet?
[EMAIL PROTECTED]
http://www.kitchensinc.net
(440) 286-6920
Chardon Ohio USA
---
Gamers mailing list __ [email protected]
If you want to leave the list, send E-mail to [EMAIL PROTECTED]
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/[EMAIL PROTECTED]
If you have any questions or concerns regarding the management of the list,
please send E-mail to [EMAIL PROTECTED]