Tuesday, July 29, 2008

Imperfect C++: Practical Solutions for Real-Life Programming


From the Back Cover

Imperfect C++

C++, although a marvelous language, isn't perfect. Matthew Wilson has been working with it for over a decade, and during that time he has found inherent limitations that require skillful workarounds. In this book, he doesn't just tell you what's wrong with C++, but offers practical techniques and tools for writing code that's more robust, flexible, efficient, and maintainable. He shows you how to tame C++'s complexity, cut through its vast array of paradigms, take back control over your code—and get far better results.

If you're a long-time C++ developer, this book will help you see your programming challenges in new ways—and illuminate powerful techniques you may never have tried. If you're newer to C++, you'll learn principles that will make you more effective in all of your projects. Along the way, you'll learn how to:

*

Overcome deficiencies in C++'s type system
*

Enforce software design through constraints, contracts, and assertions
*

Handle behavior ignored by the standard— including issues related to dynamic libraries, static objects, and threading
*

Achieve binary compatibility between dynamically loading components
*

Understand the costs and disadvantages of implicit conversions—and the alternatives
*

Increase compatibility with diverse compilers, libraries, and operating environments
*

Help your compiler detect more errors and work more effectively
*

Understand the aspects of style that impact reliability
*

Apply the Resource Acquisition Is Initialization mechanism to a wide variety of problem domains
*

Manage the sometimes arcane relationship between arrays and pointers
*

Use template programming to improve flexibility and robustness
*

Extend C++: including fast string concatenation, a true NULL-pointer, flexible memory buffers, Properties, multidimensional arrays, and Ranges

The CD-ROM contains a valuable variety of C++ compilers, libraries, test programs, tools, and utilities, as well as the author's related journal articles. New and updated imperfections, along with software libraries and example code are available online at http://imperfectcplusplus.com.

About the Author

MATTHEW WILSON is a software development consultant and creator of the STLSoft libraries. He writes a bi-monthly C/C++ Users Journal column on integrating C and C++ with different languages and technologies, as well as an online column for C++ Experts Forum. He has over a decade's experience developing with C++. Currently based in Australia, Wilson holds a Ph.D. from Manchester University (UK).

Download Link 1
Download Link 2