|
Re: Versioning, Virtual, and Override
|
Posted: Oct 23, 2003 7:57 AM
|
|
> We have experienced the corner case where unit testing would NOT have caught the problem.
Nevertheless, RCM is right. Unit tests and test-driven development are the real issues here.
With TDD, we no longer have to rely on the mafioso of gigantically complex compilers and language syntax to protect us from type problems, versioning problems, and male pattern baldness. Exhaustive suites of automated unit tests do a much better job of protecting us from arbitrary, radical change, at the application level, than compilers can possibly do.
Languages like Smalltalk and Ruby anticipate this new kind of freedom, where syntax lucidly reveals programmer intent, uncluttered by gobs of "protective" cruft. Protected by their own tests, instead of compilers, programmers can concentrate their efforts on clarity, simplicity, and (as required) extensibility.
|
|