principles:rule_of_explicitness
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
principles:rule_of_explicitness [2019-07-26 11:08] – [Contrary Principles] 82.165.232.20 | principles:rule_of_explicitness [2020-10-12 16:35] – old revision restored (2013-08-04 14:04) 159.69.186.191 | ||
---|---|---|---|
Line 9: | Line 9: | ||
* [[contexts: | * [[contexts: | ||
* [[contexts: | * [[contexts: | ||
- | * [[contexts: | + | |
===== Principle Statement ===== | ===== Principle Statement ===== | ||
Line 34: | Line 34: | ||
* Avoid highly configurable modules. Instead implement varying behavior explicitly. | * Avoid highly configurable modules. Instead implement varying behavior explicitly. | ||
* Explicitly state which module to use | * Explicitly state which module to use | ||
- | * Avoid importing all classes of a given package/ | + | * Avoid importing all classes of a given package/ |
* Avoid '' | * Avoid '' | ||
* Explicitly name parameters | * Explicitly name parameters | ||
Line 84: | Line 84: | ||
* [[Generalization Principle]] (GP): RoE often results in specific solutions. Generality often requires stating something implicitly. | * [[Generalization Principle]] (GP): RoE often results in specific solutions. Generality often requires stating something implicitly. | ||
* [[Low Coupling]] (LC): Direct communication typically has the disadvantage of a higher coupling. Indirection reduces coupling but creates implicit/ | * [[Low Coupling]] (LC): Direct communication typically has the disadvantage of a higher coupling. Indirection reduces coupling but creates implicit/ | ||
- | * [[Don' | + | |
==== Complementary Principles ==== | ==== Complementary Principles ==== | ||
* [[Keep It Simple Stupid]] (KISS): Explicit solutions are often also simpler. | * [[Keep It Simple Stupid]] (KISS): Explicit solutions are often also simpler. | ||
- | * [[Murphy' | + | * [[Murphy' |
* [[Model Principle]] (MP): RoE states that [[anti-patterns: | * [[Model Principle]] (MP): RoE states that [[anti-patterns: | ||
* [[Law of Leaky Abstractions]] (LLA): Often abstractions create a level of implicitness. Abstraction leaks are one reason why explicit solutions can be considered preferable. | * [[Law of Leaky Abstractions]] (LLA): Often abstractions create a level of implicitness. Abstraction leaks are one reason why explicit solutions can be considered preferable. |
principles/rule_of_explicitness.txt · Last modified: 2021-10-18 22:06 by christian