Rating: Summary: Learn C++ from a black belt Review: And you thought giving away a book for free on the net was stupid?
Bruce Eckel took the courageous step of making his C++ book available on-line, but this book is so good that he still made a fortune out of it. How? First of all from the visibility it got and secondly because there are people (like me) who wouldn't trade the pleasure of holding a good book in their hands with simply staring at a screen. So, go to Bruce Eckel's site (just make a search for his name, you cannot miss it) download the book and code and decide for yourself if you are happy with the e-edition or want to buy the paper one. Either way do read it!
You will get a through expositions of C++ syntax and inner workings, with explanations of why things are the the way they are. I especially liked the discussion of how virtual functions are implemented which isn't really essential to use the language but it does give more depth to your understanding and mastery of the language. If you need an even gentler introduction I would advise to buy either the 97 edition of Herb Schildt (another C++ master) "Teach yourself C++" which you can get used for about $ 1 on amazon or Ivor Horton (the clearest and most patient teacher I have ever read from) "Beginning C++" which will give you and exhaustive tutorial even on the "c part".
A couple warnings:
1) You should have at least a basic knowledge of C before reading this book.
2) This is a book on the core part of language, not on a particular compiler or platform. So you won't find info on Borland C++ or visual C++ .NET
The only issues I have with this book are:
1) The typesetting on the book is the same you have on the html edition (quite crappy) and for book that costs more than 30 bucks this is unacceptable.
2) Solutions to selected exercises are available but "for a small fee". Come on Bruce!
Rating: Summary: Excellent book! Review: As far as I know, this is the best book available on this subject at this time. It's been the best read I've had in quite a while (that includes fiction). It's very well written, introducing new concepts to the reader in a very smooth and natural way. If you've ever wondered why 'C++ is the next logical step', then you should read this book.I have also read 'C++ inside & out' and 'Thinking in Java' from Bruce Eckel, and I must say his educational and writing skills are getting even better and better. He clearly knows what he is talking about, and, more importantly, he also knows *how* to talk about it - not always a given. My C++ was getting a bit rusty, but TICPP has got me back on the C++-track in no time, and after reading it I feel ready to take on the world - well, almost.. In short: buy this book and read it. Then go on and show it off to your friends..
Rating: Summary: One of the best intros to C++ on the market. Review: Bruce Eckel, Thinking in C++ vol. I (Prentice Hall, 2000) This is what so many other books about the process of programming C++ could have been. Eckel uses the most up-to- date C++ standards, the strictest programming techniques, and takes enough time to explain both the how and the why of the things that he's talking about in enough detail that the user, while perhaps needing to read certain sections two or three times to really get the gist of them, should have a thorough understanding of the subject by the time the reader has finished the section. This leads to a complete absence of the usual "here's what to do, don't worry about why you're doing it until we get to chapter X" found in most programming books. It also stresses programmers developing their own programming style, but imposes the strictures called for by the ANSI C++ standard. Sometimes too much freedom IS a bad thing, and that's the case with the vast majority of books on C++ programming. Individuality is important, but clarity of code is important, too. The book has few shortcomings. The section on namespaces could be a little clearer considering a number of the prospective readers of this book are less familiar with them than they are with most of the other concepts covered here, for example. But the shortcomings are few and far between. The most important thing about the book, though, is that Eckel uses the book's style and presentation as a physical model of abstraction, the most important move any programmer makes from a procedural language to an object-oriented language. The astute reader will pick up from Eckel's discussions of the philosophy of programming an understanding that not everything is about code, and that code is not the be-all and end-all of the programmer's job. A lot of it, especially in the design stages, is concept. Many of us in today's workforce, especially those who have spent whole careers doing nothing other than modifying existing code, forget that all too often. We're stuck in reactive environments, where the company believes that keeping things running is more important than improving them. A grounding in the design concepts presented here may allow more adept programmers to turn a reactive situation into a proactive one--being able to keep things running at the same time they're being made better. And that's how it should be. ****
Rating: Summary: Best book for C++ learning Review: 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.
Rating: Summary: Not what I expected Review: I am about to graduate from college, and although I got an A in my C++ class, which was way back in the first year, I really didn't learn the language. Recently another student came to me, she had flunked several classes and is retaking C and C++. The college is still using Deitel, and the professors still refuse to teach, so she knew there was no way she was going to pass these classes and graduate. I have been looking for a book to help me learn C++ on my own: Dummies helped, but..., then I found Thinking In C++; AWESOME. I got it today and I am already in chapter three. Bruce Eckel starts off explaining how to go about planning the creation of the application: Use Case, UML, etc... Other courses that I got A's in, but didn't really understand (I am good at memorizing things). But now, thanks to Bruce Eckel, I truly believe I am making progress, and I know I will be able to help my friend pass her classes and graduate on time. If the rest of the book, and Volume Two are as good as the first three chapters, I will get his book on Java.
Rating: Summary: GET IT NOW!!! Review: I have been wanting to learn C++ for about 8 years now, but have never found any really spectacular books for getting me to where I need to be, starting from the ground up and introducing concepts in small coherent chunks. So, I just stuck with the languages I knew, and kept putting c++ to the side. Oh, and making the excuse that "java can do everything I need", not true as I'm am delving into the dsp world. Thanks to this book, I'm further than I have ever been before in understanding C++!!! The book along with the supplemental answer guide (for a small fee from bruce eckel's site www.mindview.net) have proven invaluable! Making C++ easy to understand is no easy task! It is obvious to me that bruce not only has a profound understanding of programming in multiple languages, but also a great teaching ability. It is rare to find someone who has both of these traits. This book isn't specifically geared towards java programmers by any means, but this book combined with my java experience has made learning c++ painless, not to mention interesting and enjoyable. I know there are other great c++ books out there, but if you are transitioning to c++ from another language or are a programming newbie, I would say this is the book to get. It would also make great reference. GET IT!!!
Rating: Summary: ... and there was light. Review: I'm a Computer Science minor who mainly programmed in Pascal but had an object oriented background to some extent by programming on MUSHes (text based role playing games where anyone can create objects, and place code on them). Obviously the syntax was quite different, but some of the 'systems' coded on these games are quite complex, so I was at least somewhat prepared to learn the concepts of OOP. After picking up a basic primer on C++ (Waite's C++ Primer Plus) and working through it, I discovered that while I'd learned the syntax, my understanding on how C++ operated on an object oriented level was still somewhat weak (which isn't to say that I didn't like the book, in fact I gave it 5 stars as a primer). This isn't that surprising for me, the normal way I learn is to get the details, do the work and at some point in the future _something_ will trigger a 'aha!' in me and understanding will come. In Eckel's first descriptions of C++ as an Object Oriented language, that light came on. In particular, when he described how inheritance could be used to replace a switch statement. It was clearly stated and proved to be the norm throughout the book. Now I combine the two books, using Waite's for a first look at a concept, and following it up with Eckel for the 'understanding'.
Rating: Summary: excellent++ Review: i) Talks about the inside stuff. It tells you why a particular feature is there, where and why it must be used, how the language feature is processed by compiler and of course where and why it must NOT be used (or abused). Inline functions is one of the many examples.
ii) Well organized especially in terms of the grouping of topics into chapters e.g. Polymorphism and Virtual functions go in one chapter, References and Copy constructor go in another. This helps in finding the difficult and related items in one place.
iii)Provides an easy reading for language features I found most difficult to understand.
iv) Includes an annotated list of references for further reading.
Rating: Summary: Excellent starting point Review: If you really want to understand C++, and have some time on your hands, then this is the book for you. Eckel presents the information in an easy to understand format, making it easy for the reader to grasp the ideas. My only gripes are that he expects the user to already know C, and he uses struct instead of class throughout most of the book. Another beginning book to look at would be Accelerated C++, by Andrew Koenig.
Rating: Summary: An excellent book, but only in the right circumstances. Review: Personally, I found this to be the best C++ book for me, as I am a self-taught and language-independent programmer. When I found this book, I was amazed at how simple C++ could be. When I had first learned C++, it was taught to me in a way that prevented me from understanding the advanced concepts, which are quite beyond the skills of the advanced programmer. I recommend this book very highly, but be very careful of your reasons for buying this book. 1. This is NOT a book that should be used as a teaching tool in a class - it is self-paced. 2. This is NOT a book that should be used by the beginning programmer - only people with some programming experience should purchase this book 3. This book is NOT for the expert for use as a reference, as it is instructional in nature. Some people have strange ideas about what the author intends his work to be used for, which are contrary to what the author himself explains in the preface. Be sure to read the preface online at the author's website (http://mindview.net) before purchasing this book.
|