From Book News, Inc.
Aimed at sophomore and junior undergraduate students taking courses in advanced C++ programming offered in computer science departments, this text streamlines the process of learning C++, presenting material in steps to prepare students for production C++ programming. Coverage encompasses building stable systems, the Standard C++ Library, and special topics, such as design patterns and concurrency. Chapter exercises are included. Eckel has written other books on C++. Allison teaches computer science at Utah Valley State College.Copyright © 2004 Book News, Inc., Portland, OR
Book 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
Use the full power of C++ First Edition Winner 1996 Jolt Award for Best Book of the Year. Learn practical programming and best practices. Meet the difficult challenges of C++ development. Build reliable and robust programs. Design Patterns chapter shows sophisticated use of objects, composition and polymorphism. Provides a gentle introduction to multithreaded programming, a feature being considered for the next version of Standard C++. Defensive Programming chapter includes a simple unit-testing framework and debugging techniques. In-depth treatment of Standard C++ Library facilities including strings, iostreams, and the "STL" algorithms and containers. Modern usage of templates, including template metaprogramming. Unravels the perplexities of multiple inheritance. Shows practical uses for RTTI. Explores exception handling in depth and clearly explains exception-safe design. Compliant with the official ISO C++ Standard. Presents results of current research being considered for inclusion in the next revision of Standard C++. All code examples freely downloadable, tested on multiple platforms and compilers including the free GNU C++ compiler on Windows/Mac/Linux. On www.BruceEckel.com: Annotated Solutions Guide Seminars and consulting Free DownloadVolume I of this book
About the Author
Bruce Eckel is the author of Thinking in C++, Volume I, and other books on C++. He served on the C++ Standards Committee, has published over 150 articles (many on C++) and has given C++ seminars worldwide. He is the president of MindView, Inc., which provides software consulting and training. Chuck Allison is former Senior Editor of the C/C++ Users Journal and author of the book C/C++ Code Capsules. He served on the C++ Standards Committee and is a professor of Computer Science at Utah Valley State College. He is president of Fresh Sources, Inc., which specializes in software training and mentoring.
Thinking in C++: Volume Two: Practical Programming FROM OUR EDITORS
The Barnes & Noble Review
Bruce Eckel, one of the world's best programming trainers, has thoroughly updated his classic THINKING IN C++the book that won the Software Development Magazine Jolt Cola award in its first iteration. The new version is better than everwhich is to say, it's pretty awesome.
There are more examples and a raft of new practice exercises. The book now fully reflects the ANSI/ISO C++ standard. There's excellent new coverage of C designed to get newbies up-to-speed so they can really fly with C++. (There's even a comprehensive, CD-ROM based C tutorial!) Best of all, the book reflects the incredible amount of user feedback Eckel gets, both as a seminar presenter, and at his outstanding eckelobjects.com web site.
Fortunately, Eckel hasn't changed the approach that made Thinking In C++ so praiseworthy in the first place. He still approaches C++ from a holistic, design viewpointnot simply as a random collection of features. Says Eckel, "you want to build a model in your head that allows you to understand the language all the way down to the bare metal; if you encounter a puzzle, you'll be able to feed it to your model and deduce the answer." The coverage remains "bite sized" and highly modular, with simple, easy-to-digest examples, each one building on its predecessors. Put simply, you'll never find a more coherent presentation of C++.
Nor a more thorough presentation. From the basics of objects and data abstraction to organizing your code, implementation hiding, initializing, cleanup,functionoverloading, constants, name control and namespaces, operator overloading, inheritance, polymorphism, and virtual functions, it's all here. (Tip: Look for a Volume II soon, covering exception handling, design patterns, advanced features in the Standard C++ Library, and more.)
ANNOTATION
Thinking in C++ is ideal for anyone already familiar with C who now wants to learn C++. Eckel has synthesized more than five years of C++ teaching and programming experience into a well-structured course that moves step-by-step through each important C++ concept. He highlights poorly-understood C++ features like virtual functions, which can improve productivity.
FROM THE PUBLISHER
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.
SYNOPSIS
This book won the Software Development Magazine Jolt Award for best book published in 1995.
You can't just look at C++ as a collection of features; some of the features make no sense in isolation. You can only use the sum of the parts if you are thinking about design, not simply coding. And to understand C++ in this way, you must understand the problems with C and with programming in general. This book discusses programming problems, why they are problems, and the approach C++ has taken to solve such problems. Thus, the set of features I explain in each chapter will be based on the way I see a particular type of problem being solved with the language. In this way I hope to move you, a little at a time, from understanding C (the book assumes you already program in C) to the point where the C++ mindset becomes your native tongue.
My goals in this book are to: Present the material a simple step at a time, so the reader can easily digest each concept before moving on. Use examples that are as simple and short as possible. Carefully sequence the presentation of features so that you aren't seeing something you haven't been exposed to. Of course, this isn't always possible; in those situations, a brief introductory description will be given. Give you what I think is important for you to understand about the language, rather than everything I know. I believe there is an "information importance hierarchy," and there are some facts that 95% of programmers will never need to know, but would just confuse people and add to their perception of the complexity of the language. Keep each section focused enough so the lecture time- and the time between exercise periods - is small. Not only does this keep the audience' minds more active and involved during a hands-on seminar, but it gives the reader a greater sense of accomplishment. Provide the reader with a solid foundation so they can understand the issues well enough to move on to more difficult coursework and books.
FROM THE CRITICS
Booknews
A book/CD-ROM introduction to the Standard C++ Containers. Each chapter teaches a single concept, or a small group of associated concepts, in such a way that no additional features are relied upon. This second edition contains new examples and exercises, and new chapters on C concepts and basic C++ features. The accompanying CD- ROM contains an even gentler introduction to C concepts necessary to understand C++. The author was a voting member of the C++ Standards Committee for many years. Annotation c. Book News, Inc., Portland, OR (booknews.com)