I answer a lot of questions about this, so I’m putting the answers here. Now in one place. Just a note really.
“How only makes sense if you know why”
Gil Tene – CTO Azul Systems
- live documentation (some say specification)
- conveys intent
- safety net – changes, refactoring – usual work
- you really FIRST check unit standalone before plugging it in anywhere and checking if it works THEN
- bug catcher – last and quite least
When it matters. When it’s more than setters or getters. When the code won’t be throwaway or prototype code. When it’s not exploratory programming. When I want safety net and documented, clear code.