Imperfect C++

Breaking Up The Monolith is not a follow-up to my 2004 book Imperfect C++, so my mentioning it here is just gratuitous self-publication.

Nonetheless, there are several parts of Breaking Up The Monolith where familiarity with Imperfect C++ will be helpful.

Extended STL, volume 1

For the record, Breaking Up The Monolith is not a follow-up to my 2007 book Extended STL, volume 1, either. :-].

Nonetheless, several of the issues discussed in depth in Breaking Up The Monolith are raised in Extended STL, volume 1.

Breaking Up The Monolith

Advanced C++ Design without Compromise

a new book by Matthew Wilson

Breaking Up The Monolith describes techniques for writing and working with C/C++ libraries effectively, efficiently and with minimal coupling.

It illustrates how to write high-quality C++ software that does not need to sacrifice on important software quality characteristics such as robustness, performance, expressiveness, flexibility, modularity, portability, and discoverability & transparency.

The principles of C++ software engineering espoused in this book are:

The concepts, patterns, principles and techniques described in Breaking Up The Monolith have enabled the development of:

Although the writing of Monolith started in late 2005, progress has involved a lot of fits and starts - and the publication of Extended STL - but now (Q4 2010) things are finally progressing, and it is hoped that Monolith will be published in mid-2011.