Disappointed by "Accelerated C++"

M

Michael Bell

In message <[email protected]>
Actually, several of these exercises *are* in the book. See, for example,
exercise 5-1.
Also note that a "day" here was four hours of classroom time, not the
typical hour or hour and a half that you find in courses that stretch out
over a whole semester. After all, we covered almost all of the material in
the book in a single week.
Also, we were in the lab to help when students had questions.
On the other hand, although I will say that the students were quite bright
on average, most of them were not Stanford students. They came from all
over.


The cover of the book says that the most useful features of the
language are taught first, rather than the most primitive, and says
that this method is very successful, but this is not how the book goes
about it. Why?

Michael Bell

--
 
A

Andrew Koenig

The cover of the book says that the most useful features of the
language are taught first, rather than the most primitive, and says
that this method is very successful, but this is not how the book goes
about it. Why?

Why do you say that's not how the book goes about it?

Accelerated C++ covers the standard-library string class on page 10, the
vector class on page 41, and iterators on page 79. I have seen lots of
books that don't cover any of these topics until hundreds of pages of
low-level stuff have gone by.

Of course the book has to talk aboutsome low-level concepts early, such as
if and while statements, because it's almost impossible to write useful
programs without them. What it doesn't do--which is the point of the text
on the cover--is waste lots of time on stuff such as bit fields, or switch
statements, or all the arcane details of pointer declarations, or even C
arrays and pointers, for that matter. Instead, it starts right in with the
essential library data structures, which make it much easier for programmers
to get useful work done quickly.
 
M

Michael Bell

In message <[email protected]
Why do you say that's not how the book goes about it?
Accelerated C++ covers the standard-library string class on page 10, the
vector class on page 41, and iterators on page 79. I have seen lots of
books that don't cover any of these topics until hundreds of pages of
low-level stuff have gone by.
Of course the book has to talk aboutsome low-level concepts early, such as
if and while statements, because it's almost impossible to write useful
programs without them. What it doesn't do--which is the point of the text
on the cover--is waste lots of time on stuff such as bit fields, or switch
statements, or all the arcane details of pointer declarations, or even C
arrays and pointers, for that matter. Instead, it starts right in with the
essential library data structures, which make it much easier for programmers
to get useful work done quickly.

None of the beginners' text books I have seen go into "bit fields, or
switch statements, or all the arcane details of pointer declarations,
or even C arrays and pointers" at an early stage. The rest of the
world has caught up with you there. Well, some of them do cover
"switch", because "if" can handle a two-way choice, but you need
"switch" to handle more-way choices.

So your class consists of showing your students how to handle strings
using if, while and do-while. They must get into all sorts of trouble
trying to do it, presumably you lean over their shoulders and say,
"no, do it like this". But that sort of spoken help can't be put into
chapter 5, so you have put it into the first 4 chapters. It is no
longer the book of the course.

It seems to me that your courses, and many of the other books I have
read, have used teaching simplifications. They may be necessary, but
they can lead to trouble. For example, I was taken aback when some
language teachers told me that if you teach a child that French "S'il
vous plait" (literally "if it pleases you") means simply English
"Please", then some of them become unable to vary it, to see that it
is sometimes right to say "S'il TE plait" and that "plaire" is an
important verb with many uses outside this phrase. (This was never my
problem)

How far do you go? I have seen a textbook where "Hello world" is
written as a program with classes. There are no easy answers.

Sadly I have to say that your textbook didn't work for ME. MY loss. I
wish it had.

Michael Bell

--
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,777
Messages
2,569,604
Members
45,217
Latest member
topweb3twitterchannels

Latest Threads

Top