Bob Martin's heuristics
From CSSEMediaWiki
(Difference between revisions)
m |
|||
Line 4: | Line 4: | ||
* Whenever you see a constant, consider it might be a variable. | * Whenever you see a constant, consider it might be a variable. | ||
* Whenever you see two or more concepts that are arbitrarily connected, consider they might need separation. | * Whenever you see two or more concepts that are arbitrarily connected, consider they might need separation. | ||
− | * If a decision | + | * If a decision seems arbitrary, consider how it could be made differently. |
* Consider that what is ancillary today will be primary tomorrow. | * Consider that what is ancillary today will be primary tomorrow. | ||
* Consider that what is low volume today will be high volume tomorrow. | * Consider that what is low volume today will be high volume tomorrow. |
Latest revision as of 03:09, 13 August 2009
These are a different kind of heuristic from those of Arthur Riel 1996. They guide the designer's thinking rather than the design itself.
- Whenever you see the number 1, consider that it might be N.
- Whenever you see a constant, consider it might be a variable.
- Whenever you see two or more concepts that are arbitrarily connected, consider they might need separation.
- If a decision seems arbitrary, consider how it could be made differently.
- Consider that what is ancillary today will be primary tomorrow.
- Consider that what is low volume today will be high volume tomorrow.
Discussion
- This looks like Software reuse culture. It conflicts with agile ideas like You ain't gonna need it and Do the simplest thing that could possibly work.