Accelerated C++: Practical Programming by Example |  | Authors: Andrew Koenig, Barbara E. Moo Publisher: Addison-Wesley Professional
List Price: $49.99 Buy Used: $24.00 as of 11/24/2009 03:05 CST details You Save: $25.99 (52%)
New (32) Used (23) from $24.00
Seller: JK1311 Rating: 85 reviews Sales Rank: 62815
Media: Paperback Pages: 352 Number Of Items: 1 Shipping Weight (lbs): 1.1 Dimensions (in): 9.1 x 7.3 x 0.7
ISBN: 020170353X Dewey Decimal Number: 005.133 UPC: 785342703535 EAN: 9780201703535 ASIN: 020170353X
Publication Date: August 24, 2000 Availability: Usually ships in 1-2 business days
| |
| Similar Items:
| |
| Editorial Reviews:
Amazon.com Review If you don't have a lot of time, but still want to learn the latest in C++, you don't have to learn C first. You might learn more by digging into current language features and classes from the very beginning. That's the approach that's offered by Accelerated C++, a text that delves into more advanced C++ features like templates and Standard Template Library (STL) collection classes early on. This book arguably can get a motivated beginning programmer into C++ more quickly than other available tutorials. What separates this title from the rest of the pack is that it jumps right in with samples that take advantage of the Standard C++ of today--from streams to built-in container classes, such as vectors and linked lists. Early examples are more complex than in other books, but the thoroughness and relaxed pace of the explanations will bring the novice up to speed. (Although it ships at a slender 350 pages, Accelerated C++ is packed with samples, tips, and example problems; about 10 per chapter.) After a tour of basic C++, the book looks at more advanced C++ features, such as templates, including built-in support for containers. Besides tapping the strength of Standard C++, you also will learn to design with your own templates. (Other tutorials would defer this material until later on.) The authors have tested the approach in the book in their own teaching, and honed a set of worthwhile examples that will help anyone get familiar with these powerful language features. All examples make use of the command line and console (without GUI programs), but the advantage is that this code should run on any of today's operating systems and compilers. Later sections cover the basics of class design, which include good coverage of operator overloading and inheritance. With its innovative approach to teaching the language, Accelerated C++ will challenge readers in the right way. It suggests that you don't need to learn C to be productive in C++. Written in an approachable style, it deserves a close look from any C++ novice. --Richard Dragan Topics covered: - Introduction to C++
- Console I/O with stream classes
- Basic string handling
- Loop and flow-control statements
- Arrays
- Using functions and methods
- Using Standard Template Library (STL) containers (vectors, linked lists, and maps)
- Iterators
- Sorting and generic functions
- Basic class design
- Pointers and arrays
- File I/O
- Memory-management techniques, including statically and dynamically allocated memory
- Adding stream support to custom classes
- Conversion operators
- Operator overloading
- Friend functions
- Inheritance
- Polymorphism and virtual functions
- Handle idioms for classes, including reference counting
- Quick reference to the C++ language
Product Description Why is Accelerated C++ so effective? Because it *Starts with the most useful concepts rather than the most primitive ones: You can begin writing programs immediately. *Describes real problems and solutions, not just language features: You see not only what each feature is, but also how to use it. *Covers the language and standard library together: You can use the library right from the start. The authors proved this approach in their professional-education course at Stanford University, where students learned how to write substantial programs on their first day in the classroom.
|
| Customer Reviews:
Showing reviews 1-5 of 85
Great selection of material for an introductory book August 9, 2009 Yuanchyuan Sheu (USA) 1 out of 1 found this review helpful
I completely agree with the selection of material for an introductory book in C++. Another book I would recommend is Lippman's "C++ Primer."
The difference between this book and "C++ Primer" is that this book is almost entirely focused on the STL, which I believe will give the beginners the greatest leverage of programming power, especially when one's domain is in the application programming. For people aiming for system programming, that would be another story. Just imagine how much effort it would take to implement your own RB tree, if in case that is needed. STL gives most of the containers you need, except maybe the hash map.
However, I have to say that by reading this book alone, you are almost guaranteed that you will NOT be able to master the STL. There are books like "Effective STL" by Scott Meyers and "The C++ Standard Library" by Nicolai M. Josuttis et al and also "Generic Programming and the STL" by Matthew Austern that could help you in this department. However, I think what you really need is a good Data Structure and Algorithm book like "The art of computer programming" by Donald Knuth. My personal feeling is that you have to know the Data Structures and Algorithm fairly well in order to select the right container and algorithm. Most of the items in the "Effective STL" are actually trivial if you have read a good book in Data structure and Algorithm. Without proper knowledge of the complexity of the container and algorithms, you are most likely going to misuse the STL, which could be both inefficient and misleading to people who are going to read your code.
Another thing I would like to comment is that, after reading this book, one may be lead to (through the STL) thinking that generic programming has a lot of potential. In some sense, this is true. There is a great book in this area by Alexander Stepanov and Paul McJones. The book is "Elements of Programming." However, do not believe that generic programming is the silver bullet. In order to create generic reusable components, one will encounter a lot more complexity (because you have to account for all the possible scenarios), and also being general means that one is not taking advantage of the special case he/she is dealing with.
Programming, in my opinion, as I would like to quote from Donald Knuth, is more art than science. I guess that is also the fun part of it. Enjoy!
An easy and modern approach to C++ June 11, 2009 G. Botta This book is awesome. It starts with easy stuff, presented in a very friendly way, and ends up using some of the most advanced features of C++ and very solid designs (I think the sentence generator is absolutely brilliant!).
Highly recommended for beginners C++ and object oriented programmers, I think it can help the professionals too. Highly recommended for didactic purposes.
C++ For The Thinking Man (Or Woman) June 11, 2009 J. Phillips (New York City, USA) I will reiterate what many have said in these reviews: this is without a doubt the best programming tutorial I have ever read.
I'm not sure if I'm qualified to say exactly who it's aimed at and who it's not aimed at, except to say that it's most definitely aimed at me! To explain, here's my situation:
I'm 36 years old and as a kid I dabbled a little in BASIC and even some simple assembly on my C64, but never took any lessons or read any books and as a result didn't really have a clue how to design or write programs and consequently lost interest. At some point I played a little with AMOS on the Amiga but lost interest until a year or so ago when I learned Python with a view to writing some software for my business. It wasn't long before I caught the coding bug and had a huge desire to learn programming "properly" through a study of C. I went through Prata's excellent "C Primer Plus" and gained a good knowledge of pointers and the C way of programming.
So it was at that point that I picked up Accelerated C++. I found that it was perfect for me, having already learned the basics of loops and branching etc. In other words, don't expect this book to baby you. The author speaks to you as if you're an intelligent, mature adult and I found the pace and the prose to be perfect for my level.
I have been reading this book alongside a study of Bruce Eckel's superb "Thinking in C++" and I feel that the two books are the perfect companion for each other. TICPP starts from the ground up and teaches you the technical ins and outs of the C++ language in a lot of detail, which some may find rather tedious, overcomplicated or boring. I have actually found it fascinating. However, I did start to feel like I wasn't getting a practical overview of how to implement programs in C++ which is why I picked up Accelerated C++ to study alongside it. I can't think of a better way to learn C++ programming than reading these two books together.
Accelerated C++ is densely packed with information and reading it is rather like eating a slice a extremely rich chocolate cake. You have to read it carefully and slowly and stop to absorb what you're taking in because it covers ground very quickly. The common thread through the book is a student grading program and while the subject matter bores me to tears it is however an excellent vehicle for building new concepts and adding new features. At times during the reading of this book I had to stop and contemplate just how much I'd learned and to be quite honest it didn't really feel possible to know so much in such a short time. But that's testament to the extremely efficient structure of this book, along with its highly accurate and streamlined writing style. I can't tell you how many programming books I've started and then put down because the author just couldn't string a sentence together without filling my head with uncertainty and ambiguity. In fact I would say that 90% of programming books are terribly written. This is not one of them.
I guess if I have one complaint it would be in relation to the exercises at the end of each chapter - some of them aren't explained very well and I got the feeling that one or two of them were not really possible to complete using the knowledge learned up to that point. For instance, you're asked to write a simplified version of the standard list class and its associated iterator at the end of chapter 11. Upon embarking on this task I found that it was far more complicated than I thought and not really suitable for an exercise question at that stage of the book. Worse still, the chapter before it contains a similar exercise question which has you designing an iterator - far too early! Which leads me to wonder if the authors didn't intend this book to be used alongside the guidance of a teacher. Solutions, or at least clues, would have been nice. However, I won't let this complaint stop me from awarding the maximum 5 stars. I really do feel confident to progress to more advanced programming topics after reading this book.
If you're a complete programming beginner, don't buy it yet. One gets the feeling you are expected to be comfortable with basic programming concepts, even though the book covers things like loops and such at the beginning (I did get the impression this was for the sake of completeness more than anything else). The pace and level of this book make it unsuitable for someone who's never programmed before. To those people, I would suggest learning Python first, using John Zelle's excellent "Python Programming - an Introduction to Computer Science." Then, when you've mastered the basic concepts, maybe try a little C, then dive into this book. Once of the best programming books ever written, I'm sure of it!
If you want to Learn C++! January 19, 2009 Joseph M. Creaney I bought this book on a recomendation and it was singly the most useful guide to writing useful C++ programs. This book is not for the fait of heart, I have had to re-read paragraphics to begin to comprhend what was being said. That being said the main difference and advantage of this book is that it teaches the standard libraries as part of the language. Just simply going into strings and vectors a programmer can far more quickly write meaningful software than mucking around with pointers and creating linked lists as other book proscribe. These libraries condence and simpfy programs that would be much longer and out of reach for beginner or intermediate programmers.
If you want to get beyond the basics of C++ and do somthing this is the book for you.
Fantastic Practical C++ December 12, 2008 Allan Anderson (Texas) 2 out of 2 found this review helpful
I bought this book because I was attending a computer science course that the teacher teaches lots of theory but no actual syntax. And he rarely provided any useful examples. I have done quite a bit of programming before, I just wanted to know the right way to program in C++. This book did it for me, it was a great purchase, and my frustration with my programming assignments virtually disappeared. Good clear examples, explains the 'why' of some of the best practices. Not really a reference book, it contains sequential chapters that build on each other. You do not have to have previous c++ experience for this book to be relevant, but I would recommend some programming knowledge.
Showing reviews 1-5 of 85
|
|
|
|