|
Softpanorama |
May the source be with you, but remember the KISS principle ;-)
|
(The second course is often called Advanced Object Oriented programming)
See also STL books in the refernece section
[an error occurred while processing this directive]beginner, July 11, 2000
Reviewer: badname (see more about me) fromAustralia
I think most of reviewers who wrote reviews for this book are experienced programmers or at least they know how to buy computer books. Well I am a C++ beginner and I bought this book and I've used it for a while. See how a real beginner think. I bought this book 2 months ago when I started programming in C++. Nobody recommended it to me. The reason I decided to buy it because it looked to me that the book was very well organized. Well it really is. When I started reading and practining with it, I found that this book is definitely not for beginners. The author wrote in preface "Knowledge of the C language is not assumed... this book is intended as a first book on C++; it is not intended as a first book in programming!" I think if he changed to " this book is intended to be used with other C++ books", would be much better because it's really hard to understand C++ by using this book alone. If you use this book as your first book for C++ and you understand well what are presented in the book, you may be one of the following.1. You hold the head of the department of computer science
2. You just received bronze medal for computer olympic or the like
3. You should found your own software company soon
4. You are cheating
The book starts with a program contained several funtions, followed by processor directives and pointer. I didn't understand most of first 100 pages but when I go to other books and came back to this book, I could understand much better.
However I give this book 5 stars. What I can say is the book is great but not for beginners. Now I have about 12 books on C++ and I regrete that I bought some of these but I never regrete that I bought this book. I think that this book is the best of all I have. Why? Other viewers already mention it all. If you know a litle bit of C or C++ and you are thinking to buy a book, think of this one. You never regret.
Pretty Good, but should change the title....(why?), April 25, 2000
Reviewer: dave_japan (see more about me) fromUniversity of Tsukuba, Japan
After years of being a C++ programmer, read quite a lot of books (about 20, I think)... I considered this one as one of my favourite, that I usually refer to when I have some problem.However, this book is definitely not-for-beginner. So, some of the reader might be misleading by/confuse with its title. The writers had stated this clearly on the back cover, which said "for developers new to C++" and in the preface, which said "This book is intended as a first book on C++; it is NOT intended as a first book on programming!" (However, it's a Primer for "C++" not for "Programming" anyway :-)
One big thing that made this book different from most of the C++ introductory books is, this book provided a lot of "real-world" program examples. Here, I really mean "real world", the program that you can really "use" (maybe after make them a bit more advanced/complete), like the text query system. While all other books provided some little codes to illustrate the points. Ok, that's better for those who know nothing, someone who come to C++ "from scratch", something like that... But after you finished it, you still might not get the idea of how to put them together , unless there are any bigger program to illustrate the idea.
Note to those who are new to programming : Read other book first, so you won't blame on a good book like this.
Note to everyone who had been misleaded by this book's title : Make sure you've read the back cover and the preface of any book before buying it, if you can... (if you can't, you have to try your luck..., good luck for you then :-)
This has to be THE classic book on C++, April 26, 2000
Reviewer: A. Kim fromNew York
This book is to C++ what K&R's C programming language is to C. Both books are not for novices to C or C++, so any harsh comments on this book from beginners should not deter intermediate to advanced C++ programmers from reading it. This book is concise, logical, to the point, and no extraneous, redundant explanations. Just like what K&R's C is. Through careful reading, I was able to follow 95-99% of the material, which is much better percentage than I was doing with Stroupstrup's (maybe less than 75%). If you are a C++ practitioner going for job interviews, each page in this book is a gem, clearly written,concise interview questions. I was programming in C++ for 4 years before I thoroughly read this book, and I feel like I know everything about C++ at this point (ok, maybe 9 out of the scale of 1-10)C++ Primer, February 18, 2000
Reviewer: Jeff Maxwell fromUSA
The worst textbook I've ever used. I'm trying to learn C++ and I find this book to be confusing, to say the least. The method of showing three or four wrong ways to do something before showing the correct method is totally exasperating. I have completely lost all faith in this book as a learning tool. A complete and total waste of time, effort and money!
A reader from Computer Science Lab. U.F. , July 21, 1999
Head for higher water....
I'm quite confused about who the intended audience of this book is for. The book's cover would suggest that its for beginners but it is written in such a way that a beginner would have a tough time with it. And it is not an advanced book by my definition. What really ruined this book is the ridiculous layout of the book. Whoever made the decision to write this book this way should be forced to program in Prolog for the next 6 months or read the entire "War And Peace" while standing on one foot. You don't present material early in a book and then explain it many chapters later! This goes against the human thought proccess. The material should have been presented with some semblance of logical order! Lippman knows his stuff, he just does'nt know how to write. I would recommend passing this one over for a more clearly written book.A reader from USA , July 10, 1999
I "Teach Myself C++" with this book.
I don't know anything about C++, even though I have a master degree in computer science. I need to learn C++ because we are in the process of converting C code to OO paradigm. C++ is the first choice. This book was given to me by my boss (I did not spend a dime). I read it from cover to cover, and I am reengineering our application in C++. In my opinion, this is an execllent book, althought I didn't read any other C++ books. I like to give it 5 stars, because during the past 5 months I learn more than just a languag syntax. I could give this book a bad review so nobody wants to read it. But it is not fair, isn't it?alec99@earthlink.net from US , June 30, 1999
Disorganized, not for a begginer
The content of the book is fair, however the organization is terrible. Some more complicated topics are introduced before simple concepts, or in some areas, complicated topics that were not discussed are used to explain simple ideas (it does get better after chapter 5 or so, but the first five chapters are the very basics that you should know before doing anything remotley complicated). For this reason, you should at least have your feet wet with C or C++ before reading this book.Next, this is one of the few books I've read that has 'decent' quiz questions. But guess what ? There are no answers!
Some topics are not explained very well, again the author assumes you already know something about it.
The examples in the book are fair, but most of them are not 'real world'. In several places however, there are just fragments of code instead of a full example, which can sometimes confuse the reader.
This book should not be bought alone to learn ANSI C++ if you are just starting with the language, however it can be used in addition to another book.
A reader from New York, USA , May 13, 1999
The authors assume too much
This might have been a good book on C++ programming if the authors did not assume any prior knowledge of C++ on the reader's part. The way information is presented in the book is much too difficult to grasp (and i'm not a beginner in programming) - the reader is drowned by the complexity (or maybe good explanation) of programming examples. I do understand that the authors know a lot about C++, but the book falls short of trying to explain the language in a clear and easy-to-understand manner. The bottom line is - look somewhere else for a good C++ textbook. P.S. The book that i personally liked reading is called "C++ primer plus".Excellent Introduction to C++ for C programmers, December 21, 1997
Reviewer: paulmac@apl.jhu.edu (see more about me) fromEllicott City, Maryland, USA
Lippman's primer is the first book on C++ programming that I read. It happends to remain one of my favorites. The first part of the book is devoted to the "basic" syntax of the language. The differences with C are pointed out and for those unfamiliar with C programming this material is essential. The second half of the book coveres C++ specific topics like templates and object-oriented constructs. I find Lippman's examples superb.
I would rate the book a 9 out of 10 for technical content, but unfortunately C++ has changed appreciably in the 6 years since it's publication. Overall I'd have to give it a 7 since it does not cover the recent changes to the language, for example the Standard Library (STL). Of course, only one introductory text does cover STL anyway, so I have high standards.
Conversly, since the book was written about the time of the Annotated Reference Manual (ARM) it is a great introduction for experienced programmers who don't already know C++ and who might not want to know right away about the latest and esoteric features of the language. Persons entirely new to programming might not want to start with this book.
I teach C++ programming courses to part-time graduate students at the Johns Hopkins University and of the 20 or 30 C++ texts on my shelf I consider C++ Primer one of the top 2-3.
Paul McNamee --This text refers to the Paperback edition.
If you like a fluffy, narrative style of writing then
perhaps you'll like this book, but most readers will find the book to be like
wading through molasses.
Finally, a decent C++ Tutorial, July 15, 2000
Reviewer:
Allen Vander Meulen; Masters Consultants Inc (see more about me) from
Thing in C++ is an excellent introduction to C++ programming.
As a fairly competent C programmer, I found his book to be clear and readable:
focusing on the essentials and stepping you through C++ in an orderly and
straightfoward fashion. I highly recommend it for any programmer looking to
get into C++.
Mr. Eckel's text and example code rely heavily on the STL (aka the ANSI Standard C++ Library), which is an excellent idea. However, the text does little more than give you a flavor of what the STL is, and what it can do. The author promises that a second volume (Thinking in C++, 2nd. Editon, Volume 2) is in the works, which will delve deep into STL. He refers you to his website to see rough drafts of this planned text and a companion text (The Thinking in C++, 2nd. Edition, Volume 1 Annotated Solutions Guide by Chuck Allison).
Unfortunately, it appears that neither of these companion books will be published for at least a year. The text he supplies on the website is still (obviously) in very incomplete form.
This leaves me more than a little disappointed. If you buy this text, you'll find yourself (like me) returning to Amazon.com in a few days to find someone else's book on STL!
Josuttis is the new undisputed champion. Chapters 2 & 3 alone are worth more than the price of the book. And it gets better as you go.
Yes, some of the examples involve simple objects. However, from the way the author develops the subject matter, extending the examples to more complex, dynamic objects becomes a simple task.
This is probably the only book you'll ever need on STL and the C++ Standard Library extensions.
STL and More..., December 24, 2000
Reviewer:
James Boer (see more about me) from
Kirkland, WA United States
Mr. Josuttis offers in this book an amazingly comprehensive guide to the often
bewildering C++ standard library. I originally purchased this book looking for
more STL information, and I was certainly not disappointed in that respect.
STL descriptions account for nearly half of the book volume. However, as
non-STL questions arose, I found myself digging into this book time and time
again (questions about auto_ptr, string class, allocators, etc).
If you're a C++ programmer and do not already own a current (circa 1999 or later) library reference, do yourself and your code a favor and grab a copy of this book. C++ is an extremely scalable language. It's easy to use only knowing a small subset of the language and library features. Having a reference such as this one ensures that you'll be less likely to accidentally duplicate work that has already been done for you in the standard library.
As far as book organization goes, I'd say that the book does lean more towards "reference" rather than "tutorial", but I never believe a book that claims to be both anyhow. Anyone interested in a pure tutorial should buy a book specifically written with that in mind. For more experienced programmers not needing quite as much hand holding, however, the book does work as advertised.
Overall, I can't really recommend this book more enthusiastically.
Very effective
alternative to other C++ books., September 30, 2000
Reviewer:
Robert Gamble (see more about me) from Wilmington, NC USA
I'll start by saying that I probably would not have
understood this book as well as I have, if I had not already been teaching
myself C++ through other forums (primers and online). The thing that most of
these other forums have in common is that they start with the basics and
build up slowly to the more abstract concepts. The problems come during the
switchovers (char* to string, procedural programming to object oriented,
pointers to iterators, linked lists to containers, etc). In almost all cases
you learn the more basic, and paradoxically more difficult concepts first.
Then you have to 'unlearn what you have learned' in order to use the more
advanced concepts.
So what's different about this book? It teaches a mix of syntax and 'advanced' concepts right from the beginning. You learn the basics of loops and choice statements while using the Standard Library. You also use them in specific examples that have real world uses (the grading program in the first few chapters for example). The Standard Library is _easy_ compared to arrays, char*, rolling your own linked list, using pointers, etc. Since it takes far less time to learn, you can be writing useful programs very quickly. _Then_ the authors go on to describe some of the more 'basic' concepts, usually in terms of how they implement some of the ideas behind the Standard Library. Since you have that understanding already, things like pointers become easier not only to learn, but to understand how they can be used.
I have one complaint about the book, and that's with the grading program, specifically how it appears in Chapter 4. As written, it's very confusing to actually enter data to get it to run correctly. A minor complaint though, considering how many times I thought to myself 'Aha! This is what I could use to solve this problem I've been having.' Or 'Aha! So this is what those other books were trying to say.'
In a nutshell, it's a refreshing look at C++ and if not
able to stand on its own, is a must have supplement for anyone learning or
using the language. At the very least, it's made me question the seeming SOP
of giving the Standard Library one or two chapters and calling fundamentally
harder concepts 'basic' and the concepts that make programming in C++ easier
being considered 'advanced'.
The best "learning C++" book yet., November 22, 2000
Reviewer:
james_dennett (see more about me) from Bournemouth, Dorset United
Kingdom
I picked up a copy of "Accelerated C++" to see what the fuss was about, and
I'll add my voice to those who have praised this book. It is the first book
I've seen to introduce C++ coding in a high-level manner along with some
notion of invariants, and reminded me in some ways of the text which taught
me Modula-2 a decade ago (Sale's "Modula-2: Disciple and Design", as if it
matters). I think/hope that this book will help to improve the average
quality of [C++] programming.
If you've been put off learning C++ because you think that it's just a low-level language, this book might be your reason to try again: it shows how to use C++ in a high-level style, and more importantly it reminds us how to _think_ in a high-level style and translate that directly to code.
-- James Dennett <jdennett@acm.org>
C++ Programmer's Guide to the Standard Template Library by Mark Nelson
I like "More Exceptional C++" even more than the original. It's not clear to me whether this is because the book is better or because the subject matter has become more important to me. The "Exceptional C++" series is shaping up to be a big brother to the "Effective C++" series, covering areas somewhat more advanced than those in the Effective series, such as exceptions, templates, and namespaces.
One aspect of the book I don't particularly care for is the quizzes/points format that, I suspect, is due to the origins of the book in the author's "Guru of the Week" series.
This is a great book and should belong in every
advanced C++ programmer's personal library.
Picks Up Where The First Book Left Off, January 30, 2002
Reviewer:
Philip R. Heath (see more about me) from Plano, TX United States
More Exceptional C++ is every bit as good as the first offering from Sutter.
Like the first, this is an advanced text, and a solid working knowledge of C++
is necessary to get the most out of this book.
For those without experience with Sutter's previous book, this is divided into "Items" grouped together by broad subject area. Unless the the items make up a series such as Items 13-16, they can be read independently and in any order. This layout is helpful to the reader who doesn't have a lot of time to read a book from cover to cover. One can sit down and spend 30 minutes with an item and gain valuable insight into the specific subject matter Sutter deals with.
I enjoy the author's writing style because he tends to be more conversational than lecturing. He interjects humor - albeit it geek humor - from time to time. The presentation makes learning advanced techniques, dare I say, fun rather than dry and cumbersome.
It is also worth noting that being advanced doesn't preclude being practical. Sutter deals with everyday topics such as the STL, exception safety, and inheritance. If you are ready to make the step to advanced C++ programmer, this book will guide you on your way in a practical, enjoyable manner.
Hidden Treasures, February 2, 2001
Reviewer: Klaus Wittlich from Cologne, Germany
The reason why I bought this book was the wish to learn more about the C++
Standard. When I held the book in my hand the first time I was not shure if it
would be worth the time reading it. It seemed only be useful for a DOS - like
software, not for my GUI problems.
So I was very surprised in a good sense to read about ideas how to use IOStreams for GUI - internationalization (I18N), described on pages 175 and 225. The IOStreams library, as it is described by the authors, is a better answer to my I18N - problems than all other three GUI - libraries I know. It offers more flexibility.
An other treasure was the techniqe of two-phase polymorphic dispatch described in this excellent book. This technique allows me a much more flexible design than in the past. If the customer asked for new features I often had to change my class hierarchy (and all classes in it) by adding new virtual functions. It is cumbersome if it is code of a library. The two-phase polymorphic dispatch shows an alternative.
The third (but not the last) treasure are the appendices. They are a good reference for C++ refinements.
The thought I perhaps would not have read this book worries me, I had missed a chance.
Many thanks to the authors writing such an excellent book.
Copyright © 1996-2008 by Dr. Nikolai Bezroukov. www.softpanorama.org was created as a service to the UN Sustainable Development Networking Programme (SDNP) in the author free time. Submit comments This document is an industrial compilation designed and created exclusively for educational use and is placed under the copyright of the Open Content License(OPL). Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.
Standard disclaimer: The statements, views and opinions presented on this web page are those of the author and are not endorsed by, nor do they necessarily reflect, the opinions of the author present and former employers, SDNP or any other organization the author may be associated with. We do not warrant the correctness of the information provided or its fitness for any purpose.
Created May 16, 1997; Last modified: February 28, 2008