C++ physical design

A quote from a thread on the Boost user list describing C++ physical design as a trade-off against other, better-established qualities of code:

Whether or not precompiled headers lead to faster builds is besides the point, because they increase coupling.

The point of good physical design is to reduce coupling. Reduced coupling has many benefits beyond its effect on build times, in fact it often leads to slower “full rebuilds”. Also, good physical design sometimes requires compromises with logical design, type safety, or even performance.

The problem is that bad physical design has no measurable effects on anything until it’s too late. Once it becomes a problem, reducing physical coupling is very difficult. Boost with its header only nature is beyond that point, IMO.

Emil Dotchevski
Reverge Studios, Inc.

Follow me on Twitter for stuff far more interesting than what I blog.

  • I really appreciate your post and you explain each and every point very well.Thanks for sharing this information.And I’ll love to read your next post too.