or
Sign in to turn on 1-Click ordering.
 
 
Express Checkout with PayPhrase
What's this? | Create PayPhrase
More Buying Choices
32 used & new from $30.00

Have one to sell? Sell yours here
 
   
Thinking in C++, Volume 2: Practical Programming
 
See larger image
 
Tell the Publisher!
I’d like to read this book on Kindle

Don’t have a Kindle? Get your Kindle here.
 
  

Thinking in C++, Volume 2: Practical Programming (Paperback)

~ Bruce Eckel (Author), Chuck Allison (Author)
4.7 out of 5 stars  See all reviews (16 customer reviews)

List Price: $60.00
Price: $42.00 & this item ships for FREE with Super Saver Shipping. Details
You Save: $18.00 (30%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.

Want it delivered Wednesday, December 2? Choose One-Day Shipping at checkout. Details
Ordering for Christmas? To ensure delivery by December 24, choose FREE Super Saver Shipping at checkout. Read more about holiday shipping.

17 new from $32.99 15 used from $30.00

Frequently Bought Together

Thinking in C++, Volume 2: Practical Programming + Thinking in C++: Introduction to Standard C++, Volume One (2nd Edition) (Vol 1) + Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)
Price For All Three: $112.05

Show availability and shipping details


Customers Who Bought This Item Also Bought

Thinking in C++: Introduction to Standard C++, Volume One (2nd Edition) (Vol 1)

Thinking in C++: Introduction to Standard C++, Volume One (2nd Edition) (Vol 1)

by Bruce Eckel
4.4 out of 5 stars (79)  $37.80
Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)

Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)

by Scott Meyers
4.8 out of 5 stars (143)  $32.25
Thinking in Java (4th Edition)

Thinking in Java (4th Edition)

by Bruce Eckel
4.2 out of 5 stars (302)  $44.09
More Effective C++: 35 New Ways to Improve Your Programs and Designs

More Effective C++: 35 New Ways to Improve Your Programs and Designs

by Scott Meyers
4.4 out of 5 stars (39)  $32.25
The C++ Programming Language: Special Edition

The C++ Programming Language: Special Edition

by Bjarne Stroustrup
4.2 out of 5 stars (285)  $54.83
Explore similar items

Editorial Reviews

Product Description

Best selling author Bruce Eckel has joined forces with Chuck Allison to write Thinking in C++, Volume 2, the sequel to the highly received and best selling Thinking in C++, Volume 1. Eckel is the master of teaching professional programmers how to quickly learn cutting edge topics in C++ that are glossed over in other C++ books. In Thinking in C++, Volume 2, the authors cover the finer points of exception handling, defensive programming and string and stream processing that every C++ programmer needs to know. Special attention is given to generic programming where the authors reveal little known techniques for effectively using the Standard Template Library. In addition, Eckel and Allison demonstrate how to apply RTTI, design patterns and concurrent programming techniques to improve the quality of industrial strength C++ applications. This book is targeted at programmers of all levels of experience who want to master C++.


From the Back Cover

This book provides complete, practical coverage of advanced C++. It streamlines the process of learning the C++ language, presenting material a simple step at a time, which allows the reader to digest each concept before moving on, and provides them with a solid foundation in C++. Exception Handling; Defensive Programming; Debugging Techniques; Strings in Depth; Iostreams; Templates in Depth; STL Containers and Iterators; STL Algorithms; Run-time Type Identification; Multiple Inheritance; Design Patterns. For software engineers/developers, programmers, software architects.

Product Details

  • Paperback: 832 pages
  • Publisher: Prentice Hall; First United States ed edition (December 27, 2003)
  • Language: English
  • ISBN-10: 0130353132
  • ISBN-13: 978-0130353139
  • Product Dimensions: 9.1 x 6.8 x 1.3 inches
  • Shipping Weight: 2.6 pounds (View shipping rates and policies)
  • Average Customer Review: 4.7 out of 5 stars  See all reviews (16 customer reviews)
  • Amazon.com Sales Rank: #281,181 in Books (See Bestsellers in Books)

    Popular in this category: (What's this?)

    #96 in  Books > Computers & Internet > Microsoft > Development > C & C++ Windows Programming

What Do Customers Ultimately 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.
 
(6)

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 Reviews

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

 
24 of 26 people found the following review helpful:
5.0 out of 5 stars The only other C++ book you would need, June 4, 2004
By ART SEDIGHI (Old Bethpage, NY United States) - See all my reviews
There are plenty of C++ books out there. When it comes down to it, one would really need two books on C++. Well, this is the second book you need; with the first one being any of many classics including the first volume of this book. Just when you think you have read or have a reference to all the C++ topics, Eckel and Allison come out with their continuation of a classic - volume two of Thinking in C++.

Exceptions, Templates, STL, Design Patterns, Multiple Inheritance, concurrency and parallel programming are just some of the main topics covered in this book. With the book being over 800 pages, one can imagine how deep each of these topics must have been covered. Exceptions grab you right off the bat. Just when you think you know all about exceptions, the authors throw you a curve ball with "Exception Specification", and how to handle the "unexpected". You are blown away by the true control that C++ gives you. .
Strings, along with examples given to depict the string class in full - as part of the standard template library (STL) of C++, begin the authors' discussion of the Standard Template Library. Vectors, sets, lists and many other features of the STL have their own dedicated section which talks about generic containers. The authors set the stage for STL by describing the containers as:

"Container classes are the solution to a specific kind of code reuse problem. ...A container class describes an object that holds other objects..."

The authors then continue on to cover the very important and broad topic in C++ - containers. Examples after examples are used to convey the details and the tricky parts of the C++ STL. The key by reading this chapter is to portray and teach efficient techniques to common problems using the generic container classes. Not only the reader can learn most of what s/he needs to know about containers in this book, a small introduction is also given to show how to actually write a generic container - a linked list. The example is simple, yet powerful in conveying to the reader the ins and outs of writing generic containers. Speaking of generic, generic algorithms are covered very well in this book. All of the algorithms currently in the C++ library are covered with an accompanying example for each one. A special attention is given to the use of function objects as the means of customizing these algorithms.

"A function object is an instance of a class that overloads operator(), the function call operator. This operator allows an object to be used with function call syntax"

Probably the simplest and the easiest definition of algorithm complexity theory is given in this book. The authors make the concept so easy to understand that even a non-programmer or mathematician can understand the reason and the complexity of complexity theory!
Templates are probably my favorite topics in this book. Next to the C++ template "bible" by Vaqndervoorde and Josuttis, this book is the best source for generic programming and templates. The authors cover the three main topics of templates well:
1) Templates with types as parameters
2) Templates with compile-time constant as values
3) Templates with other templates as values.
The authors start with small and simple examples and build on top of them. Templates are generally a difficult topics to cover and to convey, but the authors do a great job in depicting the examples and teaching the reader how templates work and to create powerful programs with them.
The advanced topics in this book (multiple inheritance, runtime type identification, design patterns, and concurrent programming) are my favorite topics. Multiple Inheritance is covered in depth, better than any other book that I have seen out there. The authors do caution the readers regarding the difficulties and the pitfalls of multiple inheritance, but they also explain with examples, pictures, etc... how a developer can overcome these difficulties (using upcast to resolve naming conflicts for example or avoiding the diamond-shaped inheritance tree).
Concurrency and concurrent programming is one of the more difficult things to do in C++. Threads are usually used to achieve such task, but it takes practice and lots of sleepless nights to debug threaded programs and resolve deadlock issues with threads. The advantages of threads (ability to run multiple tasks concurrently, very low context switching relative to processes, allow better code organization and the added convenience to the user specially for graphical user interface tasks) are depicted and shown thru a number of examples. The most important part of this section is how the authors use examples to show what the right way of doing something is as oppose to simply putting bunch of source code together to fill in the blank pages. The examples are priceless to me and very beneficial to any programmer.

All and all, Bruce Eckel and Chuck Allison did a great job putting this book together. The topics covered are very beneficial to any serious C++ programmer or anyone wishing to become one. I particularly like the examples and "how-to's" given throughout the book as they are a valuable source when I am stuck with a programming challenge.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
13 of 14 people found the following review helpful:
5.0 out of 5 stars Excellent followup to volume one, March 22, 2004
Volume Two picks up where the first left off, without skipping a beat. It starts by covering exceptions and unit tests, both of which should see more use in the real world. It then goes onto cover the standard C++ library in more depth that the first book. He then covers templates in a chapter that he calls 'Templates in Depth'. Yes, the coverage is long, about one hundred pages, but I would rename the chapter 'Templates at a practical level', which is exactly the where the coverage should be left. Templates, like macros, can be overused and have had whole books that cover the topic. Eckel chooses, and I think wisely so, to cover the topical to the extent that it would help you write practical templates yourself and to be able to use template libraries such as the Standard Template Library (STL).

The STL is covered, well, in the two chapters that follow the template chapter. Once again the coverage is not absolutely complete because of the grand scope of the field. There are long books on the STL, but these chapters provide a pragmatic and thorough introduction which should serve for most practical purposes.

The final chapters cover advanced topics. Notable are the chapters on Design Patterns which are designs for templates and classes what are considered industry 'best practice'. So instead of redesigning the wheel you use a design pattern, where appropriate. If you get into design patterns you should also read the extremely popular Design Patterns book, now in it's 25th printing.

In the final chapters is also a discussion on multiple inheritance and threading. Both of which are covered at a pragmatic level and have whole books dedicated to the subject.

This is an excellent, and needed addition to the original Thinking in C++ book. Both of the books are written in an accessible style and cover the topics at a practical level without rat-holing. For aspiring C++ programmers there is probably no better set of books to read as an introduction to C++.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
12 of 14 people found the following review helpful:
5.0 out of 5 stars Defies the First Law of Technical Documentation, April 7, 2004
By Jay P. Harbath (Medina, Ohio) - See all my reviews
(REAL NAME)   
The First Law of Technical Documentation states that:
"The more complicated the subject, the less will be written about it, and the more likely there will be errors in what is written".

This explains why typical programming books will have fifteen pages on If statements, but only a paragraph that says that "Interrupts can be serviced".

Bruce does a masterful job of building the readers up so they are able to gradually yet thoroughly assimilate the subject matter. Thanks to years of putting on seminars and taking comments from readers, he teaches in useful and productive increments without overwhelming the readers. His examples are well thought out and useful. He actually responds to questions and comments. Please don't spam him, he seems like a genuinely nice guy! I look forward to taking one of his seminars in person.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


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

4.0 out of 5 stars Useful for an elderly programmer
It is valuable to have a text with plenty of examples and good explanations. I think it could have a more comprehensive index.
Published 5 months ago by John H. Andreae

5.0 out of 5 stars A must
Have to say "a bit boring" but absolutely a must if you want to learn C++.
Published 20 months ago by Roberto Mosca

5.0 out of 5 stars Excellent
Amazon delivered on its promise. Great pricing with quick shipping. Can't beat that.
Published 20 months ago by M. Arora

5.0 out of 5 stars This is a must-have for all C++ programmers!
This book is a must! It is not that visually appealing but in pair with the Vol. 1 it is a mandatory book that will help you featuring out all the brighter and dustier corners of... Read more
Published 20 months ago by António Santos (Spulit)

3.0 out of 5 stars More of a reference than the first one.
Bruce Eckel, Thinking in C++, vol. 2 (Mindview, 2004)


I was a big, big fan of Volume I of this two-volume set. Read more
Published on July 5, 2007 by Robert P. Beveridge

4.0 out of 5 stars useful to know the standard library
In this book i found everything about the standard c++ library.
Recommended if you wanna do something serous with c++
Published on March 30, 2007 by Vincenzo Ampolo

5.0 out of 5 stars As essential as the first volume
After introducing the core of C++ in volume 1, this books covers the rest, including IO streams, exceptions, multiple inheritance, and runtime type inference (although C++'s... Read more
Published on February 19, 2007 by Thing with a hook

4.0 out of 5 stars A great book for programmers
If you have programming experience, the Thinking in C++ series is a great way to learn C++.
Published on July 1, 2006 by David C. Black

5.0 out of 5 stars Excellent Book on C++
A very nice coverage of various topics in C++ are presented in this
book. The chapter on templates could be best described as a summary
for Josuttis and... Read more
Published on March 15, 2006 by A. Alothman

5.0 out of 5 stars The best beginner/intermediate-level C++ book I've ever read
Bruce Eckel has an amazing ability to break down complex topics and make them easy to understand without simplifying or compromising the concepts themselves. Read more
Published on December 24, 2005 by George Legeza

Only search this product's reviews



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
   


Listmania!

Create a Listmania! list

So You'd Like to...

Create a guide

Product Information from the Amapedia Community

Beta (What's this?)


Look for Similar Items by Category


Look for Similar Items by Subject

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.


Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.