PROGRAMMER TUTORIALS
solutions to programmer problems

ASP
C#
C++
COBOL
Delphi
HTML
Java
J2EE
JavaScript
JSP
.NET
Perl
PHP
SQL
Visual Basic
XML
View Shopping Cart


Get a FREE Apple iPod Photo

  Books Thinking in C++: Introduction to Standard C++, Volume One (2nd Edition)

Rating: 1 out of 5 stars - Trashiest C++ book ever
It's bad for learning, bad as reference, and not even close to addressing real C++ issues. "Author": If you put Templates as the last chaper to just mumble through it, stick to Visual Basic. Don't waste the reader's time.




Rating: 4 out of 5 stars - Review of Thinking in C++ Vol 1
Intially I liked the book very much, it seemed to have a fresh approach and style, was easy to read, and seemed trustworthy as far as the content was concerned.
Upon getting farther into the book I still find it solid, but at times it becomes ponderous in the reading, and the examples leave something to be desired. The material also at times breezed over, when a more indepth understanding might have been in order. I find the organization of the material a bit difficult at times as well. Subjects sometimes are introduced with out first giving a througough understanding of the subject matter, and I dont get a good feel for a consistent building of skills and knowledge. All in all I find this a good book, but I believe it could be better.



Rating: 5 out of 5 stars - Thinking in C++ - a great book
One of my professors wrote a book named "Software development in C++", but I couldnt figure out anything from this book, so I went to the library and found your book (it's the original in English) Thinking in C++, and I must say, it's such a great book, that helped me so much to understand all the things about C++ I need and still will need in order to graduate here, but I'm sure that your book and all the great explanations inside made it a lot more easier!




Rating: 5 out of 5 stars - My C++ Learning Experience
Since I'm reviewing both "Accelerated C++" as well as "Thinking in C++", I thought I'd post the review on both book links.

There have already been excellent reviews of this book, but I would think the main reason people purchase these books is because they have an explicit purpose, which is to learn Standard C++. That being said, C++ is one of the most powerful and multi-faceted languages around, and no other language provides both high level abstractions and low level control in one programming language as C++.

Because of these features, it is often opinied that C++ is too complicated, large and takes too long to master. While there are some merits to this criticism, many important real world systems are being bult with C++ and professional developers need to master the fundamentals of C++ now. With that in mind, and after spending (or wasting) much money on various books proclaiming to teach C++ from the ground up, it was not until reading Konig and Moo's "Accelerated C++" and Eckel's "Thinking in C++" and in that order, that I finally "got it".

Why I emphasize "in that order" in the last paragraph, is due to the methodologies used to teach C++ by ACPP and TICPP, and due to this, its best to read ACPP first, then TICPP for the most effective learning. Here's my reasons:

ACPP teaches C++ in a top down fashion. What I mean by this, is that the higher level Standard Libraries are integrated right from the start to teach programming contructs such as looping, selection and decisions making using library facilities such as , , and . The Standard is utilized from chapter zero, and relieves much of the burden of C strings and all the low level details one would have to know to use them properly. This can be especially burdensome to the beginner.

As important as the container classes are to the Standard library, are the algorithms used with them. ACPP ulitizes these as well, and from chapters 0 to 7, the student is taught to use the common algorthms such as sort(), copy(), find() and accumulate(). By teaching these features right from the beginning, the reader is able to write some non-trivial programs without having to wade through the typical and troublesome C features typically taught in other books. Thus, by the time the Reader reaches the second half of the book (chapters 8-16), s/he is ready to understand how to build their own user defined types, and other important topics such as pointers, memory management, classes, as well as object oriented and generic programming.

In contrast, TICPP teaches C++ from a more traditional bottom up approach. Throughout the book, the assumption is that the Reader is comming to C++ from a C background. For example, throughout the book starting from chapter 4, Eckel demonstrates a Stash and Stack application, developed first as a "better C", then throughout the book adds features to them such as grouping data structures with the functions that act on them in the form of classes. The concepts of constructors and destructors, function overloading and default arguments, using const and static effectively, inlining, namespaces, references, copy constructors, operator overloading, using new and delete for dynamic objects, etc. are all covered.

In my opinion, the last two chapters where virtual functions, abstract classes, and an introduction to templates and iterators are covered, is where the book really shines, as these chapters allow the book to finally culminate the benefits of true object oriented programming and give a solid introduction to generic programming in the form of templates and iterators. By this point, the Stash and Stack examples are utilizing pure virtual functions and iterating through containers in an STL-like fashion that is similar to the ones in the Standard Library.

The current trend in C++ is to favor the abstractions provided by the Standard Libraries when developing professional software, and ACPP exemplifies this attitude throughout the book. The lower level C-like aspects of C++ can and have caused much trouble in the form of memory leaks, buffer overruns, etc. Nevertheless, certain class of applications require the ability to get close to the metal, and C++ allows this ability without restrictions when necessary. Also, there are many (and some could argue that most C++ based systems out there still adhere to this) legacy systems where C++ is still being used as a "better C". TICPP is the book that will teach one how to make these programs more type safe, as well as migrating it to take advantage of more modern C++ idioms. And in Volume 2 of TICPP which just came out, Eckel and Allison cover the Standard Library in depth, as well as other professional methodologies such as RTTI, Multiple Inheritence, Design Patterns and Concurrent programming.

But by careful and methodical study of both books, and as is recommended by me, reading ACPP first then TICPP, one will learn C++ from the highest layer to the lower, then from the lower back up the higher and obtain a through knowledge of the basics of C++. One can then effectively study the more advanced books, such as by Meyers, Sutter, Stroupstrup, etc. and have the confidence to tackle professional C++ projects.

Postscript - Though I advocate the above learning method for C++, I would like to add that the above two books presume a certain programming maturity, though one does not need to be a guru. A person with the experience typical of first year CS1 (and CS2) in a language like Java or Python (in fact, for a complete novice, I would recommend learning Python first) would be most suited to following the above presciption. Also recommened is to study a book about data stuctures and algorithms, which will provide the Reader with a solid understanding of the mechanisims that underly the STL (meaning the Standard Template Library which encompass the Containers, Iterators and Algorithms of the Standard C++ Library which was originally part of SGI's implementation).

-Don Kim



Rating: 5 out of 5 stars - Best book for C++ learning
Eckel's books are the best ones to learn a new programming language.

Having used lots of programming books in Spanish and English (including Charte's and Schildt's) to learn many languages, books by Eckel are the best ones.

- Eckel's explanations are very good and to the point.
- Examples don't mess with lots of collateral stuff, but rather focus in the thing he is explaining.
- Exercises are useful, rather than a simple do-it-again-changing-variable-names (and you can buy the solutions from the author's web site, http://www.bruceeckel.com).

If you want to learn C++, do not bother looking for another book, even if Thinking in C++ seems expensive to you. These books are a very good investment.


page 3 of  15
 1  2  3  4  5  6  7  8  9  10  11 


2000-2006 ProgrammerTutorials.com


Top100WebShops.com