Eliminating Static Dependencies

Nature abhors a vacuum.  It turns out she also abhors static dependencies (I have my sources).  Static dependencies are the modern-day globals, often exposed through classes named “Helper”.  I’ve certainly been guilty of overusing static dependencies in the past, with classes like “LoggingHelper”, “SessionHelper”, “DBHelper” and so on. The problem …

Good Test, Better Code – From Unit Testing to Behavior-Driven Development

“Testing is design”; “Unit tests are documentation”; “Tests are specifications”. These are sought-after rewards of developer testing practices, but simply writing tests or even writing tests before writing production code doesn’t make these wishes come true. When we take up unit testing, we initially tend to do things a certain …