Re: New
- From: niklasb@xxxxxxxxxxxxx
- Date: 28 Nov 2005 10:59:04 -0800
Randy Howard wrote:
> niklasb@xxxxxxxxxxxxx wrote
> (in article
> <1132791787.554911.5220@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>):
>
> > As to whether C++ is a reasonable first language, I think that depends
> > in part on how it's taught.
>
> So far, so good.
>
> > C++ can be used and taught as a fairly
> > high-level language, but it is often taught from the bottom up,
> > starting with the lowest-level language features as if it were C
> > (e.g., using pointers and null-terminated strings instead of the
> > standard string class) which tends to overwhelm beginners and
> > over emphasizes the wrong things.
>
> Disagree completely. Ignoring low-level details (which,
> contrary to popular belief, actually do matter) is one of the
> main things wrong with modern CS education today.
We may not disagree as much as all that. I agree that
low-level details matter, and a competent C++ programmer
should be proficient in the "C" part of C++, e.g., null-
terminated strings, raw arrays, pointers, manual memory
management, etc.
All I was trying to say is that the order in which concepts
should be introduced to a new C++ programmer should be
more top-down -- focusing initially in the problem domain,
developing the skill of clearly understanding a problem and
decomposing it into parts (functions, variables, loops, etc.).
In keeping with this top-down approach, one can initially
think of string, vector, list, etc. as "magic" primitive facilities
provided by the language. Fairly soon, though, one should
learn about how these things work at a more nuts-and-bolts
level and how to implement one's own classes.
In contrast, teaching C tends to be more bottom-up, in that
you start close to the machine. That's OK. It's how I learned
programming. But I think C++ lends itself to a more top-
down approach. You may (and probably do) disagree, but
please don't misconstrue me as saying the low-level stuff
doesn't matter.
.
- Prev by Date: Re: VB or VC++?
- Next by Date: Re: Java speed: Reality versus theory?
- Previous by thread: Re: New
- Next by thread: Genetic progerramming
- Index(es):
Relevant Pages
|