Skip to content

Latest commit

 

History

History
32 lines (17 loc) · 908 Bytes

File metadata and controls

32 lines (17 loc) · 908 Bytes

A.1: Separate stable from less stable part of code

???

A.2: Express potentially reusable parts as a library

Reason
Note

A library is a collection of declarations and definitions maintained, documented, and shipped together. A library could be a set of headers (a "header only library") or a set of headers plus a set of object files. A library can be statically or dynamically linked into a program, or it may be #included

A.4: There should be no cycles among libraries

Reason
  • A cycle implies complication of the build process.
  • Cycles are hard to understand and may introduce indeterminism (unspecified behavior).
Note

A library can contain cyclic references in the definition of its components. For example:

???

However, a library should not depend on another that depends on it.