Amazon.com: Absolute C++ (9780201709278): Walter Savitch: Books

Have one to sell? Sell yours here
Absolute C++
 
See larger image
 
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Absolute C++ [Paperback]

Walter Savitch (Author)
4.8 out of 5 stars  See all reviews (15 customer reviews)


Available from these sellers.


Textbook Student FREE Two-Day Shipping for students on millions of items. Learn more

Formats

Amazon Price New from Used from
Paperback --  

Book Description

January 15, 2002 0201709279 978-0201709278
Absolute C++ , offers complete coverage of the C++ programming language. It provides all the tools necessary for experienced and novice programmers to master C++, including: thorough coverage of the Standard Template Library; complete and fully executable code throughout; sections highlighting programming tips and common pitfalls; and a logical order of coverage of C++ topics in order for students to better understand the language. This book is appropriate for introductory courses covering the C++ language, intermediate programming courses introducing C++ to students familiar with another language and will act as a total reference beyond a student's coursework.


Editorial Reviews

From the Back Cover

Absolute C++ is the definitive textbook on C++ from best-selling author Walt Savich. This brand new book provides complete, thorough, absolute coverage of the C++ programming language.

Absolute C++ provides all of the tools necessary for experienced and novice programmers alike to master C++, emphasizing the qualities and complexities of the language aver elementary programming technique. Thus, it presents:

  • Complete and fully executable programs throughout to demonstrate language features
  • Extensive coverage of the Standard Template Library (STL)—this is a necessary element in understanding C++ as it examines the full functionality and versatility of the language
  • A logical ordering of topics that allows readers to better understand the language (for example, covering arrays before classes-this institutes a more progressive method of learning how the language works before moving on to advanced features
  • Material on the Unified Modeling Language (UML) and Patterns to take advantage of the latest trends in software engineering
  • Sections highlighting programming tips and common pitfalls to enhance understanding
  • Absolute C++ also offers a full supplements package for instructors, including instructor's manual, solutions manual, PowerPoint slides, and Testfen, a computerized test generator. A companion web site (www.aw.com/savitch) is available for all readers to help enhance and test their understanding of the material.

Excerpt. © Reprinted by permission. All rights reserved.

This book is designed to be a textbook and reference for programming in the C++ language. Although it does include programming techniques, it is organized around the features of the C++ language rather than any particular curriculum of programming techniques. The main audience I had in mind when writing this book was undergraduate students who have not had extensive programming experience with the C++ language. As such, it would be a suitable C++ text or reference for a second or later computer science course that uses C++; it could even be used for a first programming course. This book is designed to accommodate a wide range of users. The beginning chapters are written at a level that is accessible to beginners, while the boxed sections of those chapters serve to quickly introduce more experienced programmers to basic C++ syntax. Later chapters are still designed to be accessible, but are written at a level suitable for students who have progressed to these more advanced topics. (For those who want a beginning textbook with more pedagogical material and more on very basic programming technique, I suggest another book I wrote that is more along these lines.)

This book also includes an introduction to patterns and the Unified Modeling Language (UML). Since many computer science curricula postpone recursions to a second computer science course, the book includes a full chapter on recursion.

The C++ coverage in this book is very complete, going well beyond what a beginner needs to know. In particular, there is extensive coverage of inheritance, polymorphism, and exception handling in C++. There is also extensive material on the Standard Template Library (STL), as well as an introduction to patterns and the Unified Modeling Language (UML). Since many computer science curricula postpone recursion to a second computer science course, the book includes a full chapter on recursion.

SPECIAL FEATURES

ANSI/ISO C++ STANDARD

This book was written to conform to the new ANSI/ISO C++ standard.

STANDARD TEMPLATE LIBRARY

The Standard Template Library is an extensive library collection of preprogrammed data structure classes and important algorithms. The STL is perhaps as big a topic as the core C++ language. This book contains a very substantial introduction to the STL. There is a full chapter on the general topic of templates and a full chapter on the particulars of the STL, as well as other material on or related to the STL at other points in the text.

OBJECT-ORIENTED PROGRAMMING

This book is organized around the structure of the C++ language. As such, the earlier chapters, which cover aspects of C++ that are common to almost all high-level programming languages, are not particularly oriented toward object-oriented programming (OOP). This makes sense for a reference book and a book for learning a second language. However, I do consider C++ to be an OOP language. If you are really programming in C++ and not C, then you must avail yourself of the OOP features of C++. This book gives extensive coverage of encapsulation, inheritance, and polymorphism as realized in the C++ language. The final chapter on patterns and UML gives additional coverage of OOP-related material.

FLEXIBILITY IN TOPIC ORDERING

This book allows instructors wide latitude in reordering the material. This is important if a book is to serve as a reference. It is also in keeping with my philosophy of writing books that accommodate themselves to an instructor's style, rather than being the instructor to an author's personal preference of topic ordering. With this in mind, each chapter introduction explains what material must be covered before doing each section of the chapter.

ACCESSIBLE TO STUDENTS

It is not enough for a book to present the right topics in the right order. It is not even enough for it be clear and correct when read by an instructor or other expert. The material needs to be presented in a way that is accessible to the person who does not yet know the material. Like my other textbooks that have proved to be very popular with students, this book was written to be friendly and accessible to the student.

Summary Boxes
Each major point is summarized in a boxed section. These boxed sections are spread throughout each chapter. They serve as summaries of the material, as a quick reference source, and a way to quickly learn the C++ syntax for features the reader knows about in general but for which he or she needs to know the C++ particulars.

Self-Test Exercises
Each chapter contains numerous Self-Test Exercises at strategic points in the chapter. Complete answers for all the Self-Test Exercises are given at the end of each chapter.

Other Features
Pitfall sections, programming technique sections, and examples of complete programs with sample I/O are given throughout each chapter. Each chapter ends with a summary section and a collection of programming projects suitable to assign to students.

SUPPORT MATERIAL

Each book comes with a free copy of the Microsoft Visual C++ 6.0 Introductory Edition. In addition, the following supplements are available on the book's companion website at http://www.aw.com/savitch/:

  • Source code from the book
  • PowerPoint slides

The following resources are available to qualified instructors only. Please contact your local sales representative or send e-mail to aw.cse@awl.com for access information:

  • Instructor's manual
  • Computerized testbank

ACKNOWLEDGMENTS

Numerous individuals have contributed invaluable help and support in making this book happen. Frank Ruggirello and my editor Susan Hartman at Addison-Wesley are the ones who first conceived of the idea for this book. Susan Hartman, Galia Shokry, Lisa Kalner, and the other fine people at Addison-Wesley were a continuing source of support and encouragement in getting the book reviewed, revised, and out the door.

Cindy Kogut did an incredibly thorough job of copyediting. Sally Boylan and others at Argosy Publishing did great work under rushed conditions in converting the manuscript to typeset pages.

David Teague deserves special acknowledgment. I very much appreciate his hard work, good insights, and careful researching for this book.

I thank my good friend Mario Lopez for the many helpful conversations we had about C++.

The following reviewers provided corrections and suggestions that contributed greatly to the final product. I thank them all. In random order they are Kenrick Mock, University of Alaska, Anchorage; Richard Albright, University of Delaware; H. E. Dunsmore, Purdue University; Christopher E. Cramer; Drue Coles, Boston University; Evan Golub, University of Maryland; Stephen Corbesero, Moravian College; Fredrick H. Colclough, Colorado Technical University; Joel Weinstein, Northeastern University; Stephen P Leach, Florida State University; Alvin S. Lim, Auburn University; and Martin Dulberg, North Carolina State University.

I again thank David Teague-this time for his excellent work in preparing the instructor's guide.

Finally, I thank Christina for putting up with my working late on the book and even offering encouragement instead of complaining.

Walter Savich
http://www-cse.ucsd.edu/users/savitch/
wsavitch@ucsd.edu


Product Details

  • Paperback: 912 pages
  • Publisher: Addison Wesley (January 15, 2002)
  • Language: English
  • ISBN-10: 0201709279
  • ISBN-13: 978-0201709278
  • Product Dimensions: 9 x 7.3 x 1.5 inches
  • Shipping Weight: 3.1 pounds
  • Average Customer Review: 4.8 out of 5 stars  See all reviews (15 customer reviews)
  • Amazon Best Sellers Rank: #357,679 in Books (See Top 100 in Books)

 

Customer Reviews

15 Reviews
5 star:
 (14)
4 star:    (0)
3 star:    (0)
2 star:
 (1)
1 star:    (0)
 
 
 
 
 
Average Customer Review
4.8 out of 5 stars (15 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

47 of 49 people found the following review helpful:
5.0 out of 5 stars Absolutely 100% Fat-Free C++, April 13, 2002
This review is from: Absolute C++ (Paperback)
Although I don't believe in the perfect C++ textbook that teaches everything and satisfy the absolute novices as well as the seasoned experts, 'Absolute C++' by Walter Savitch is the very first C++ textbook (the book that teaches you the syntax of C++ language) that really satisfies me with the completeness of its coverage of the C++ language without verbosity of the other countless textbooks available in the market. Its coverage of C++ topics is concise but thorough. Its organization is neat and its presentation is very pleasant to the eyes. Each topic is 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. Each chapter contains the handful of review exercises with the complete answers. This textbook is lean and nutritious (100% fat-free). Anyone who really hates textbooks in the remote vicinity of 'C++ How to Program' by Deitel and Deitel should take a look at this.

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, devotion, and time to master C++ no matter which textbook you choose to use. Many books claim to be the one. Many programmers claim that the book they recommend is the one. But the experienced programmers will find the beginners' textbooks such as 'Starting out with C++' by Tony Gaddis insulting and waste of time while the novice programmer will find advanced textbooks like 'The C++ Programming Language' by Bjarne Stroustrup very intimidating and frustrating. It really depends on each individual's level of the knowledge on C++. One person's best textbook can be another person's total waste, and everyone has a different and unique way of digesting information. Make sure that you thoroughly check the contents before you choose to buy any C++ textbook. Instead of taking others' recommendations and advices for granted, you should try to find the right combination on your own. You will probably need to use a few different textbooks together, because single textbook cannot possibly cover all the topics and the required depth necessary to master C++. This is especially true for the advanced topics such as 'Templates', 'Data Structure', 'STL', and 'File Processing', which are broad and complicated enough to deserve a single textbook. I recommend 'Absolute C++' by Walter Savitch for the absolute novice programmers. If you have few or no prior programming experience, this will be one of the easiest textbooks available. If you are the advanced programmers, you really should be able to understand anything written about C++. 'C++ Primer' by Stanley Lippman and Josee Lajoie or 'Core C++: A software Engineering Approach' by Victor Shtern could substitute as the alternative textbook for the advanced programmers. If you are the expert programmers, 'C++ FAQs' by Marshall Cline, Greg Lomow, and Mike Girou, 'Effective C++' series by Scott Meyers and 'The C++ In-Depth Series' from Addison-Wesley should be adequate enough to satisfy your ego and to teach you many advanced techniques not found in other textbooks.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


20 of 20 people found the following review helpful:
5.0 out of 5 stars Truly a well written college text book, July 9, 2004
By 
ART SEDIGHI (Old Bethpage, NY United States) - See all my reviews
This review is from: Absolute C++ (Paperback)
Walter Savitch, the author of the Absolute C++, first edition, has done an amazing job putting together a book that can be used as a teaching aid for second year or first year advanced Computer Science students. Unlike professional books, the author has geared this book towards students with little programming experience in the real-world at least, and has created problems that can aid the student in learning the material more deeply and more concretely. If I were an instructor, this would the book that I would use, and if I had to take C++ all over again, this is the book I would love to learn from.

Color aids and categorized notes, such as "Pitfall" and "Tip", aid the student along the way with little details that go a long way when you are programming. "Example" and "Self-test exercises" further the learning process after each section by testing the student's knowledge of the topic. At the end of each chapter answers are given to the "self-test exercises" and various programming projects are given that mimic the topic covered and at the same time expect the student to think outside of the box to solve the problems. Some of the programming projects given are hard enough that they can used - alone or collectively with other problems in other chapters - as semester long projects or group projects.
Examples are depicted right on spot rather than line-by-line after the example. Colored notes, arrows to the section of code being explained and highlighting of the important code sections are used to depict each and every example. The examples are well-documented and various "screen shots" are used to display what the output would look like. Pictures are inserted when needed, explaining how pointers and references work for example, and they are worth a thousand words. The pictures are easily concise and clear, simple and yet to the point.

Being a text book on C++, one would wonder about the authors approach to the C++ language. It would help if the readers on this book have some background on programming, and especially in C++. The author spends one chapter on the basics of the language, but that's not enough for readers with no programming background. A good deal is then devoted to various aspects of programming such as arrays, functions and structures first before the author starts on the in-depth coverage of C++ itself. The Standard Template Library (STL) is used throughout the book to demonstrate and teach C++, starting with Vectors. Each of the classes of the STL are covered in detail throughout the book, but the authors breaks each of the major classes (lists, string, vector, etc...) and places them to teach a specific topic to the students. The author touches on STL first before going in to operator overloading, for example. This way, the students can learn the [semi] advanced features of the language in a context in which it can later be used - more concrete and more applied approach rather than an abstract overview of the features. With that pattern, the string class is covered first before the author starts on pointers, array of pointers, character pointers and pointer and reference manipulation in general.

More advanced topics in C++ such as virtual functions, inheritance, templates and exceptions are covered towards the last half of the book. Templates being a rather interesting and possibly complicated topic are covered before the STL container classes such as linked lists and trees are covered. Not too much detail is given on templates and only the basics, as one would expect. Templates are covered just enough to get the students to understand how linked lists work, or how function templates are used in the STL, for example. UML and Patterns? They are covered too. Not in detail, but enough for a lecture or two at the end of the semester. Model-View-Controller, the classic of all patterns is covered first, and examples from the book are used to convey the message and the power of templates.
In closing, I wanted to touch on the web site for the book, and instructions material that is available for this book. Obviously all of the source code from the book is available for download, along with the slides for the students. For instructors, the slides are simply great. What reinvent the wheel? Simply use Savitch's slides for teaching. Example tests are also available for the instructors. If that wasn't enough, the CD in the book comes with an introductory version of the Visual C++ 6.0 to be used by the students. The package (website, CD-Rom and the book) is simply complete!
I would highly recommend this book to any instructor of the C++ programming language.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


20 of 20 people found the following review helpful:
5.0 out of 5 stars Best C++ book to sufficiently explain the syntax, December 19, 2003
By 
RICHARD D GUNDERSON (Minneapolis, MN USA) - See all my reviews
This review is from: Absolute C++ (Paperback)
I have been out of college for 7 years now, and have been a programmer all that time. When I graduated, although I knew enough C++ "to be dangerous", I was uncomfortable with the language. With many years experience under by belt, I now understand why I (and many of my graduating classmates) were so confused and uncomfortable with C++ -- Syntax!

C++ is very flexible and powerful. I've been tought that. Only no one every showed me exactly why. Probably because in order to do powerful things in C++ requires a mastery of all the syntax. There are slightly different ways to overload functions and operators (both binary and uniary), and friend classes of multi-class inheritence etc etc. My professors in college did a good job of explaining the theory of Classes, Inheretence, Overloading, Templates and so on. However, when it came down to actually writting some code, I had now idea how to implement all these grand abstract theoretical ideas. Therefore as a result, I wrote long confusing C code using the C++ compiler to get around my lack of knowledge how to actualy write the syntax.

"Absolute C++" is the first C++ book I've read which does an excellent job of teaching you about syntax on the Nuts-and-Bolts aspects of implementation. (Especially overloading of functions and operators; different ways to invoke different constructors; the different ways you can invoke an overloaded assignment operator; doing all the above as an abstract base class; doing all the above as a template; how namespaces work.)

Learning about high-level theory of object-oriented programming is a great thing! But, there comes a time when you have to know how to actually express your idea in a programming language (i.e. syntax.) That's the part my professors weren't good at. And unfortunately, no one seems to think the syntax matters anymore. Perhaps that's why software is so bug-riden and inefficient these days, because there's so many programmers who simply don't know how to write good software taking advantage of all the complex syntactic features of a language. In fact, if you read customer reviews for ANY computer programming book here on Amazon, there's always a lot of people complaining about "not enough examples." I think what they really are trying to say is, "Okay I understand the theory, how do I program all of that?"

I just wish someone would write a C++ book entitled "Become a human compiler for the C++ language in 21 days" that focused solely on the language, and not general OO theory. I suppose I could read the BNF description of the language, but that seems more difficult.

The reason I'm so Gung-Ho about learning the syntax is due in part to this book "Absolute C++". I was one of a sea of engineers working for IBM last year, and our department took a refresher C++ course which this book was offered. The professor tought the language, and didn't talk at all about OO theory. Suddenly everything made sense! All that high-level theory in college started to come together and I "got it". He taught us what the compiler was doing as it interpreted various syntax statements. That practical low-level understanding strengthend my high-level general OO knowledge so much that I became a much better software engineer.

I wish all programming books would spend more time on the practical syntatic details. Not only does it make you a stronger programmer, but a better software designer as well.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews











Only search this product's reviews



What Other Items Do Customers Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(1)
(1)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums





Look for Similar Items by Category


Look for Similar Items by Subject