Most Helpful Customer Reviews
|
|
50 of 57 people found the following review helpful:
5.0 out of 5 stars
At last Deitel & Deitel delivered!, January 22, 2005
I had always hated Deitel & Deitel's 'C++: How to program' iterations. I had always thought the book never quite lived up to its great potential because of its own ambition to be the best C++ textbook ever written. I had always thought the book was a terrible book not because of its contents, but how it presented them. I had also thought D & D were quite arrogant and obnoxious in terms of the rambling verbosity of translating their impressive knowledge into texts in elitist's fashion. That, along with the horrendous text fonds and repugnant color schemes, not to mention the ugliest coding presentation and the endless assult on my nerves launched by thousands of those ugly bees all over the textbook, literally made me nauseous (really). I think those were more than enough reasons to hate the book whether the actual contents were good.
The latest edition (5th) eradicates all sins, and rectifies the lows of the past editions. Well, except the bees... Even the bees manage to look kind of cute in light of the newest improvement.
The text fonds are all changed and color schemes are all toned down. It is so pleasant to the eyes. Ugly coding presentation and stiff graphic illustrations are replaced with much organized and refreshing style. Many of coding examples have also been replaced with more real world-oriented objects. The biggest improvement, in my opinion, is the writing style. Although the core contents are untouched, quite big chunks of the old contents were discarded and rewritten with much fluentness and simplistic style. The old D & D's infamous babbling out is significantly reduced. It is now actually quite enjoyable to read this book. Several chapters from the previous edition have been divided into smaller chapters and sequentially rearranged. Furthermore D & D will offer us free 'Multimedia Cyber Classroom' and 'C++ in the lab' along with free 'Student Solution Manual' available on the website. This is a very noble move by them and a very welcomed addition for people who try to learn C++. The only wish I have now is to ditch the somewhat out of place chapters like 'Web Programming' and 'Intro to XHTML' sections and beef up the advanced topics like 'Templates', 'File Processing', 'Data Structures' and 'STL'. I know individual book could be written for each of these chapters, but I'd rather have a little more in-depth knowledge on those topics over web programming. Overall, this is a vastly improved edition when compared to the previous editions. I am very happy with this book. D & D finally listened to readers' long time complains and delivered one of the best C++ textbook in the market. They completely redeem themselves with the newest iteration. I highly commend their lastest effort.
***My Previous Reviews on this book***
3rd Edition (3 stars out of 5)
'C++ How to Program' by Deitel & Deitel is one of those books that set out to be the one and only, the perfect textbook that teaches you everything about C++ to everyone from the absolute beginners to the truly advanced programmers all at once. The book falls very short under the weight of its own ambition. By just reading the table of contents, it seemed that the book properly offers the complete coverage of the syntax of the C++ language, and each topic seemed to be presented in the sensible order which facilitates the readers to learn C++ step by step without getting lost or tangled up with the bits of coverage all over the textbook. The only thing presented in the sensible order in this book is the table of contents. Despite the quite large volume, Paul and Harvey (D&D hereafter) decided to babble aimlessly in very verbose fashion without any focus or making any sense. I mean the language they employee is English only in appearance. D&D could have babbled in Russian and I wouldn't have known the difference. They don't seem to have the fundamental ability to deliver their knowledge to the readers in clear fashion, and the level of knowledge of C++ has nothing to do with it. Now 'C++ Primer' by Stanley Lippman and Josee Lajoie or 'The C++ Programming Language' by Bjarne Stroustrup are indispensable guides for the advanced programmers that will teach you so many techniques your ordinary textbook do not cover, and yes, they are definitely not for the novice programmers. This is not the case with D&D. I mean C++ is arguably the toughest programming language to master, but it doesn't have to be this painful just to browse through the textbook. From the get-go, D&D clearly aimed to please both "technically oriented people with little or no programming experience, and experienced programmers who want a deeper treatment of the language" (from chapter 1 section 1). This is such a contradiction. As a result, what could have been an impressive textbook became an expressway to frustration. Sentences tend to be written in the overly complex fashion without serving much purpose. They are just totally confusing and incomprehensive. Much concise, terse, and simplistic writing style is desired and would have done the job better for everyone. The higher level of knowledge on C++ doesn't have to be translated into more complicated writing. It gives out the wrong impression to the beginners that it is their lack of C++ knowledge that hinders the understanding of the book. D&D's ability to convey their knowledge to the readers doesn't match with their impressive programming career. The coding style is awful and definitely not recommended to anyone although it is not syntactically wrong. Too many details are explained in the context of C language as if the knowledge in C is assumed before learning C++. Layout and color scheme are extremely disoriented and tiresome to your eyes. The coverage of each topic is scattered all over the textbook. D&D just love to say "We will later discuss about...", "We previously discussed about...", and so on instead of focusing on each topic one at a time and then moving on. There are too many pop-out boxes for various tips and warnings that are repeated over and over and over to the point they are disturbing. D&D arrogantly try to write the textbook that teaches you all the syntax of the language and the lawbook that teaches you all the semantics and the techniques of the language at the same time. They set out to achieve the impossible and succeed to do neither. This book is too confusing for the beginners to the point that people will hate C++, and it is too repetitive and shallow for the advanced programmers. If anyone can overcome these difficult obstacles, however, this book has quite a lot of information. I would not recommend this book to anyone who just start learning C++. Believe me when I say this because you will be committed to the mental asylum within the first few minutes if you attempt to learn C++ with this book. Try 'Absolute C++' by Walter Savitch instead. If you have a solid knowledge on C++, D&D's book can be a decent reference book. Then again, you are better off with 'The C++ Programming Language' by Bjarne Stroustrup, 'C++ Primer' by Stanley Lippman and Josee Lajoie, and 'Effective C++ Series' by Scott Meyers if you are able to enjoy D&D's book.
4th Edition (3 stars out of 5)
The latest edition is marginally improved compared to the previous edition. The biggest difference is that the coding style is much easier to read now and more comments have been added to the program examples. The color has been toned down just a bit, but not enough to ease the pain to the eyes. Some of the lectures have been sequencially rearranged and some new methodology has been used for inheritance and polymorphism. But the core is essentially identical with the previous editions. Although this book has enormous potential to be the best C++ book in the market, the book still has the identity crisis. It really doesn't know which group of programmers it aims to help. It still is unfairly too complicated for the novice programmers and not enough substance for the advanced programmers. This is quite a book, a flawed masterpiece, so to speak. Only if D&D decide to shift the emphasis and focus on one group and lose the other, this could be a great book.
Some helpful tips for those who just started learning C++.
1) Keep in mind that C++ is a very hard and tough programming language to master.
C++ is arguably the most complicated programming language available today. It is by no mean THE perfect programming language, and it requires the tremendous amount of responsibilities from the programmer. However, no other language is as powerful, versatile, and flexible as C++. It gives the programmers the assembly-language-like freedom with the data types and the memory management. It offers the programmers the characteristics of both the high-level language and low-level language. It also provides the programmers both the efficient structure-oriented features and the strong object-oriented features at the same time.
2) C++ is not C, although C++ is derived from C language.
Although C++ is derived from C and inherited many features from C, C++ is NOT C. They are totally two different and separate languages just as Java is not C++. C is a structure-oriented language while C++ is object-oriented language. C++ has many new features that C can't even begin to dream about. Give C++ all due respect.
3) The perfect C++ textbook does not exist, so stop trying to find one.
Just about everyone who ever tried to learn C++ have attempted one way or another to find or to write that elusive perfect textbook that teaches you everything and satisfy the absolute beginners as well as the seasoned experts. The fact of the matter is there isn't one. Learning C++ can be a very long and frustrating process given the complexity of the language. It will take your full attention,...
Read more ›
Help other customers find the most helpful reviews
Was this review helpful to you?
|
|
|
|
|
|
10 of 11 people found the following review helpful:
3.0 out of 5 stars
Rather lengthy and verbose for introducing concepts, April 16, 2005
While the book may be about the only game in town for learning C++ the authors have a tendency to present lengthy sample programs with a lot of other things going on besides the concept they are trying to demonstrate. The best way to learn programming is to do programming but the first examples should be very short,very concise, and to the point. The introductory examples should distill out any non-pertinent information which makes this book a difficult read at times.
A good way to learn is to actually type in the code without just pasting it from the CD. Many of the intro examples in the book are several pages long and discourage the reader from making the attempt.
We use the book in a class I am taking but the instructor gives short, concise, (AND EFFECTIVE) sample programs to introduce concepts. This has proven to be very effective in learning the many facets of things like pointers. This book jumps right into the thick of things and its hard to see the point of things. Because of this we RARELY use the text in class and rather build upon the code samples presented in class. Students tend to use the book as a reference, not as a primary source.
Help other customers find the most helpful reviews
Was this review helpful to you?
|
|
|
|
|
|
13 of 16 people found the following review helpful:
5.0 out of 5 stars
Perhaps The Single Best Teaching Book Ever Written, February 9, 2006
I can't say enough about C++ How To Program 5th Edition. The book is one of the best, comprehensive, foundational C++ books around - if not the best. The programming examples are exciting, fun, and practical. Along the way you learn so much about the principles of good programming while getting a solid foundation in C++. The excercises are challenging in a fun way. They make you think and you begin to get an understanding of what programming is like in the real world. The book carefully explains everything. I am amazed that in the beginning it assumes that the only thing you know is how to turn the computer on. By the end of this text, you will have a thorough foundational knowledge in C++. I stronly recommend that you get this book if you are new to C++ and especially if you don't have a programming background. I recommend that you pace yourself and try to do at least 20 to 40 pages a day, choose 5 of the excercises (which are provided in copious amounts), and type (not cut and paste) all of the code within the chapter. I came to C++ with no knowledge of it and no programming background. Now, I have a strong foundation in it thanks to this book. Again, if you want to learn C++ and you have no experience, buy this book! Once you are finished, then you can move on to your specific IDE (i.e. Visual C++, etc...).
Help other customers find the most helpful reviews
Was this review helpful to you?
|
|
|
|
|
|
Most Recent Customer Reviews
|