[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-edu
Subject:    Re: [kde-edu]: proposal
From:       Matthew Tedder <matthew () tedder ! com>
Date:       2002-06-10 19:13:58
[Download RAW message or body]

On Saturday 08 June 2002 12:22 pm, Sebastian Stein wrote:
> Dirk <koelschejung@gmx.de> [020608 18:08]:
> > what do you think about an educational program to teach c++ or kde
> > programming
>
> Well, I see a lot of people each day trying to learn programming. I don't
> think C++ is a good start. It is better to first learn a structured
> language like C or better Pascal. The theory of OOP is very hard to
> understand for a beginner.

The only reason OOP is hard for beginners is because teachers of it go 
through such elaborate explanations.  Its actually a pretty simple concept:  

=========================
Lesson 1:  Big designs can be made faster by putting together parts of little 
designs things that already exist.

Lesson 2:  You can make a new design that is similar to an older one by 
replacing the parts you don't like.

Lesson 3:  Once you have a design, you can make as many of the things you 
designed as you want.

Example:
Let's say you want to make a new kind of car.  You can combine older designs 
for engines, chassis, doors, seats, etc. and then you only have to design the 
brand new parts from scratch.  Or, you can take a design for an existing car, 
replace parts from similar parts of other car designs.  Do a little 
refinement and walla.

Once the design is finished.  You can make as many of those cars as you want. 
===============================

The real question is, why do Universities give whole classes and devote so 
much text and examples and fancy terminology to explain something so simple?

I think teaching programming in general will be harder.  However, it might be 
a logical first step to do so.  I would make it task oriented so they can see 
results and make small programs early on.

1.  Programming in C
  a.  Making a Program that Inputs and Outputs
      i.  I/O with Variables
      ii.  I/O with Keyboard and Screen
      iii.  I/O with Files
      iiv.  I/O with Networks
  b.  Making a Program that Understands Logic
      i.  If .. Else Conditionals
      ii.  Conditional Loops
      iii.  Switches and Cases
  c.  Simplifying Complex Things
      i.  Functions
      ii.  Arrays
      iii. Structures
   d.  Complicating Simple Things
      i.  Pointers
  

Matthew

>
> Don't get me wrong, but I think you will need a lot of research to find a
> suitable way for doing this.
>
> Steinchen

-- 
Anything that can be logically explained, can be programmed.
_______________________________________________
kde-edu mailing list
kde-edu@mail.kde.org
http://mail.kde.org/mailman/listinfo/kde-edu
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic