Having read it and I would have to disagree, as have others on this forum (although google.com cache results show some people though it was a good book, back in 1999-2001); I used to say it was a good book also, but that was because I was a newbie. Check amazon.com reviews.Originally Posted by beanroaster
I would recommend starting the class out on this next book, and you'll probably see some more people on this forum agree
Accelerated C++: Practical Programming by Example
by Andrew Koenig
http://www.amazon.com/exec/obidos/tg...books&n=507846
Its a great book to begin learning the programming language, and quite small (350 pages) so its meant to teach the language and not the definitions of everything.
The next book, and its solution book, start out on the basics too, but give a good description and complete definitions of everything in the language (function prototype, function heading/body, preprocessor directive, using directive, and some more descriptive ones I cant remember, in addition to the regulars: pointers, references, objects, etc.). Its a good reference, and is 1200 pages.
C++ Primer Plus, 5th Edition
by Stephen Prata
http://www.amazon.com/exec/obidos/tg...books&n=507846
C++ Primer Answer Book
by Clovis L. Tondo
http://www.amazon.com/exec/obidos/tg...glance&s=books
Then there is a book written by the creator of C++. It contains a lot of information on the language, and is a great reference, although quite advanced and gets into the knity grity.
The C++ Programming Language, Special 3rd Edition
by Bjarne Stroustrup ISBN 0-201-70073-5
http://www.amazon.com/exec/obidos/tg...glance&s=books
C++ Solutions: Companion to the C++ Programming Language, 3rd Edition
by David Vandevoorde
http://www.amazon.com/exec/obidos/tg...glance&s=books
The STL (Standard Template Library) is a major use in C++ now a days. It's logical that after finishing basic C++ that you would move onto learning the STL. Although I'd make sure you actually do know the basics (how objects, variables, etc. work). This next book is highly rated and can be used as a reference (best choice when it comes to STL), but again.. advanced:
The C++ Standard Library: A Tutorial and Reference
by Nicolai M. Josuttis
http://www.amazon.com/exec/obidos/tg...glance&s=books
Site on STL: http://www.sgi.com/tech/stl/stl_introduction.html
Assigning projects on algorithms and binary trees, or arrays, and linked lists would be useful, as they arent just things you find pointless, but have good use in programs.
For Windows based computers I'd get Dev-Cpp.. fairly easy to use and good for beginners to experts.
http://www.bloodshed.net/devcpp.html
As for HTML.. well you can learn the basic HTML syntax to give an idea how to structure an HTML document, but a more standard way of developing HTML documents is to use a fair amount of CSS (like header files) in it. CSS (Cascading Style Sheets) are like a wrapper for HTML and is highly efficient. I would recommend using Macromedia Dreamweaver for developing HTML websites, and not Publisher or Frontpage. Its trial for 30 days, but I dont know what it would cost to put it in a school.
The cost of the books would be about $250, unless you're getting multiple copies. But I would only get multiple copies of the book you plan on teaching with (in my opinion Accelerated C++), and the rest used as reference. You could also get the PDF version and allow students to access it over a networked server.
It should take you a month max to pick up the basics of C++, up to polymorphism, exceptions, inheritance (I mean a month for you, not the students, students.. 75 hours, maybe longer, about 2 and a half months on my school system, less than a month on-your-own 5 hours/day time). Then probably a month to wrap it up and apply STL to it. Thats it for C++, essentially (unless you want to go into details of every function, like streams, which you could still get a good idea about). After that its about learning how to do things with C++, like algorithms, graphics libraries, API, ports, etc. and those books would be bought individually. I doubt you'd get as far as that though.. and if you did, you could just distract the class with a few win32 tutorials (windows programming). This would be a nice choice, since its layed out like notes and in sections (like a class):
http://code.glowdot.com/tutorials/wi...ial.php?page=2
You could teach Java, but C++ is well worth it (more than Java, or any other language I can think of).