4 ms·
If you are doing TDD and are aiming for near complete specification and coverage, then dynamic languages and static languages will pretty much require the same
by snprbob86 15y ago
If you are doing TDD and are aiming for near complete specification and coverage, then dynamic languages and static languages will pretty much require the same number of use cases.
However, most people don't do TDD. With a dynamic language, your compiler isn't doing entire categories of checks for you. You're putting more responsibility on the tests, so you wind up writing more of them sooner and running them almost as frequently as static language users run their compilers!
Since people generally stop long before 100% coverage, you wind up with far more tests for the average dynamic project than the average static one.
- jhpriestley 15y agoComplete specification is impossible with tests, except for functions with finite domains. Testing is about reducing bugs to a certain level. Entirely different techniques - namely formal proofs - are required to eliminate bugs. Strong static typing is more effective than tests, in terms of cost/benefit, at reducing bugs.