principles:invariant_avoidance_principle
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
principles:invariant_avoidance_principle [2021-09-02 12:37] – old revision restored (2021-05-11 21:58) 65.21.179.175 | principles:invariant_avoidance_principle [2021-10-18 21:53] (current) – +++ restored +++ christian | ||
---|---|---|---|
Line 17: | Line 17: | ||
Methods typically have preconditions. Something that has to be true prior to invoking the method so it can work properly. Typical cases are parameters that may not be '' | Methods typically have preconditions. Something that has to be true prior to invoking the method so it can work properly. Typical cases are parameters that may not be '' | ||
- | Furthermore there are (class) invariants, i.e. conditions that have to be true in all observable states during the whole lifetime of an object. Typical invariants are attributes that may not be '' | + | Furthermore there are (class) invariants, i.e. conditions that have to be true in all observable states during the whole lifetime of an object. Typical invariants are attributes that may not be '' |
While preconditions and invariants are absolutely necessary, introducing further ones comes at a certain cost. | While preconditions and invariants are absolutely necessary, introducing further ones comes at a certain cost. | ||
Line 47: | Line 47: | ||
===== Origin ===== | ===== Origin ===== | ||
- | This principle is newly introduced here. | + | {{page> |
Line 180: | Line 180: | ||
* {{page> | * {{page> | ||
+ | |||
+ | ===== Discussion ===== | ||
+ | |||
+ | Discuss this wiki article and the principle on the corresponding [[talk: | ||
+ |
principles/invariant_avoidance_principle.txt · Last modified: 2021-10-18 21:53 by christian