mirror of
https://github.com/isocpp/CppCoreGuidelines.git
synced 2024-03-22 13:30:58 +08:00
Improve A.all (#1413)
* reword the A.1 rule title * add candidate content for the A.1 rule * make minor improvements to the A.2 note * simplify wording in the first bullet of A.4's Reason
This commit is contained in:
parent
fc27313b75
commit
a9242c8dae
|
@ -19764,7 +19764,7 @@ This section contains ideas about higher-level architectural ideas and libraries
|
|||
|
||||
Architectural rule summary:
|
||||
|
||||
* [A.1: Separate stable from less stable part of code](#Ra-stable)
|
||||
* [A.1: Separate stable code from less stable code](#Ra-stable)
|
||||
* [A.2: Express potentially reusable parts as a library](#Ra-lib)
|
||||
* [A.4: There should be no cycles among libraries](#Ra-dag)
|
||||
* [???](#???)
|
||||
|
@ -19774,9 +19774,9 @@ Architectural rule summary:
|
|||
* [???](#???)
|
||||
* [???](#???)
|
||||
|
||||
### <a name="Ra-stable"></a>A.1: Separate stable from less stable part of code
|
||||
### <a name="Ra-stable"></a>A.1: Separate stable code from less stable code
|
||||
|
||||
???
|
||||
Isolating less stable code facilitates its unit testing, interface improvement, refactoring, and eventual deprecation.
|
||||
|
||||
### <a name="Ra-lib"></a>A.2: Express potentially reusable parts as a library
|
||||
|
||||
|
@ -19785,15 +19785,15 @@ Architectural rule summary:
|
|||
##### 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 `#include`d
|
||||
A library could be a set of headers (a "header-only library") or a set of headers plus a set of object files.
|
||||
You can statically or dynamically link a library into a program, or you can `#include` a header-only library.
|
||||
|
||||
|
||||
### <a name="Ra-dag"></a>A.4: There should be no cycles among libraries
|
||||
|
||||
##### Reason
|
||||
|
||||
* A cycle implies complication of the build process.
|
||||
* A cycle complicates the build process.
|
||||
* Cycles are hard to understand and may introduce indeterminism (unspecified behavior).
|
||||
|
||||
##### Note
|
||||
|
|
Loading…
Reference in New Issue
Block a user