Wednesday, July 11, 2007

BookReview: STL Tutorial and Reference Guide: C++ Programming with the Standard Template Library

A very good book on STL, though a bit dry in terms of explanation.
Very comprehensive.
I recommend going through the STL tutorials before diving into this one.

TechTalk: Using CppUnit for testing your project

TechTalk: Using dOxygen for Documentation

BookReview: Object Oriented Analysis and Design with Applications (Second Edition) by Grady Booch

THE book which opened my eyes to design, types, interfaces using OOPS/OOAD.
Till then C++ meant coding.

This book introduced how to model what you can imagine into code. Configurable, flexible, orthogonal....

The design of the book with each chapter starting with different quotations and interspersed with meaningful dry humour cartoons makes this a memorable book.

Thank you Grady Booch.

BookReview: The Mythical Man Month by Frederick P. Brooke

Huge insight into what makes a very big software project successful or Not....

"There is no silver bullet...." except for good management of the design and implementation.
"12 doctors can (only) deliver a baby in 10 months..." are some quotes to remember from this book everytime your manager asks you to do yoga with the project plan.

BookReview: The Practice of Programming by Brian Kernighan and Pike

"Good design is what happens when you can take out no more from your creation without breaking it". This is the philosophy of this book.

It teaches you the simple principles of (as shown on the cover)
1) Clarity
2) Simplicity
3) Generality

Thank you Kernighan and Pike for teaching these Zen like aspects of programming.

BookReview: The C Odessey by Vijay Mukhi

An excellent series on the many facets of C (Unix, Dos, Windows, ..., Networking, RDBMS).

This is in keeping with the spirit of inquisitiveness of a true hcaker....

An eye-opening series for a beginner in C.
Simply Amazing!!

I still remember the way he explains how a bitmap is made up by setting pixels/bits on/off.

Note: The Amazon link is only for the Network/RDBMS which is actually the most dated/obsolete of the series, but its the only one available in Amazon.

BookReview: Inside the C++ Object Model by Stanley Lippman

One of the Best books on C++ internals/under-the-hood.

NOTE: The author was hired by Microsoft as Architect to clean up its extremely non-standard/buggy VC++ compiler to conform to the C++ Standard.

0) The original Cfront preprocessor/compiler converted C++ into C.
That means that almost every C++ code "could" be converted into C.
Note: Modern C++ compilers no longer convert to C, but it helps to make the compilation process more easy to understand. This book connects the dots.
1) Virtual tables/functions turn into simple function pointer table lookups.
Simple data structures show how this is implemented in different compilers.
2) Generated functions like default constructors etc. finally start to make sense.
3) Inheritance starts looking more like compiler controlled composition of objects.
4) Gives you X-Ray vision right from compiler data-structures to actual assembly code.

5) Watch out for the typos and the mismatch between some of the diagrams and the explanation.

You start seeing the source code "through the compiler's eyes". A lot of work from the compiler goes into making your Object-oriented code run.

A Must have book for any person wanting to really know how the compiler works with C++.