Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

bousozoku

Moderator emeritus
Jun 25, 2002
16,120
2,397
Lard
admanimal said:
I don't think it's that simple. You can't really design something when you have no idea how it will be built. At the very least, designing a program requires you to know what classes, variables, methods, etc. are. And you have to have at least a rudimentary knowledge of how different design decisions affect the computational complexity. Even the fact that you can only do one thing at a time isn't obvious to someone with no programming experience.

For these reasons, I really think it is necessary to strike a balance between teaching design and actual programming. You can't really teach one without the other.

As for starting with OOP vs. procedural, I would definitely go with procedural. OOP is basically just procedural with additional design considerations which are difficult to grasp at first and can distract from the task of learning basic programming constructs. I don't think you can do OOP effectively without being comfortable with breaking a program into functions anyway. Once the students are ready for writing serious programs with serious designs, then OOP can come in. (Not that you can't write a serious program without OOP).

It is that simple. You don't need to think about coding at all.

Imagine all the items in your house as objects. Disassemble them logically. Figure out what parts they have and at a high level, how they work together.

There is no reason for a first year student to touch a programming editor.

OOP doesn't need to be applied to everything but when both techniques are taught properly, the outcome is equally successful.
 

Soulstorm

macrumors 68000
Feb 1, 2005
1,887
1
Design should be taught every time that the student learns a new command, or proceeds to the next lesson. Imo, you can't teach programming design without showing the student the basic principles of programming, but at the same time you can't teach programming (either procedural or OOP) without talking a bit about methodology and programming design.
 

weg

macrumors 6502a
Mar 29, 2004
888
0
nj
gekko513 said:
The text based I/O programming courses didn't feel like real programming to me at the time (high school).

Text based I/O programm IS real programming. Everything else is just putting together various library calls and kowning class libraries
 

bousozoku

Moderator emeritus
Jun 25, 2002
16,120
2,397
Lard
weg said:
Text based I/O programm IS real programming. Everything else is just putting together various library calls and kowning class libraries

It takes a lot more effort than it's worth to make it more than organised chaos.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.