Re: Teaching OO
- From: "Nick Malik [Microsoft]" <nickmalik@xxxxxxxxxxxxxxxxxx>
- Date: Mon, 30 Jan 2006 12:47:55 -0800
Hello Gunnar G,
After all the other respondants responded with truly impractical languages,
I suggest that you consider teaching OO with either C# or Java. You can
download perfectly servicable programming environments with either one for
free. Both are capable and easy to learn (in fact, they are very similar to
each other). Both are based on the C/C++ syntax, and both have legions of
developers that you can ask questions from. Ample jobs exist for developers
who can program in one of these languages (unlike Smalltalk).
As for programs, there are many good ones. I am fond of using simple games
as example teaching programs. I have a C# mastermind game that works well.
Assignment 1 was to create the display so that the user could click the
selections and the computer would score the result. Assignment 2 was to
create the ability for the computer to use simple heuristics to guess an
answer. Assignment 3 was to generalize the mechanism for the computer to
solve the problem using math (many good descriptions of the mathematics of
mastermind exist on the web... just use search.msn.com and you will find
quite a few... the math is terribly simple).
I have also, in the past, used word search programs to teach with. The rage
these days is Sodoku, so you may want to go there, just to make sure that
your students end up with a fun game to play. For those who are a bit more
daring, you can use a card game like SET. The problem with card games, of
course, is drawing the cards, but you can probably get access to a library
of card images if you look in the third-party controls market. I like SET
because the cards are easy to draw and the game is based on the "base 3"
numbering system, so that allows a good discussion of number representation
within the computer.
If you want to teach practical designs for business apps, then you will need
to go with a boring app that is more representative. I would suggest
creating a web-based wizard for collecting expense report information for a
trip (including hotel, transportation, meals, incidentals, etc). Most
companies need these things, so an employer will empathize with the problem.
I've had entry-level developers demo their solutions for me when coming in
for an interview... makes for a nice segue from the questioning.
Good Luck,
--
--- Nick Malik [Microsoft]
MCSD, CFPS, Certified Scrummaster
http://blogs.msdn.com/nickmalik
Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
I do not answer questions on behalf of my employer. I'm just a
programmer helping programmers.
--
"Gunnar G" <debian@xxxxxxxxx> wrote in message
news:_OtCf.43357$d5.199478@xxxxxxxxxxxxxxxxxx
> Hi.
> I'm looking for ideas for a OO programing course with C++.
> I need some good examples of programs that one can write that are not to
> big
> (a few hundred up to a thousand lines) is alright, but still feels
> meaningful.
>
> Any books, internet references you can give me?
>
> Thank you very much.
.
- Follow-Ups:
- Re: Teaching OO
- From: H. S. Lahman
- Re: Teaching OO
- References:
- Teaching OO
- From: Gunnar G
- Teaching OO
- Prev by Date: Re: Is it a facade
- Next by Date: Re: The intelligent agent philosophy of thinking
- Previous by thread: Re: Teaching OO
- Next by thread: Re: Teaching OO
- Index(es):
Relevant Pages
|