
On Jun 25, 2014, at 3:53 PM, Johan Larson
Has anyone here actually done strict TDD?
I would expect strict TDD-based development (with no substantial design up front) to gradually build up a system from fuzzy ideas. This would grow increasingly unwieldy until the designer got fed up trying to keep it all together and redesigned it from scratch. And for a large system there could be several such redesign-completely episodes.
I’ve done it a few times. What you’re missing is that good test coverage makes it incredibly easy to refactor, so you never have to redesign completely. Just refactor as necessary, when problems arise. TDD has a long history of being paired with agile design processes for this reason. -Kevin
On Wed, Jun 25, 2014 at 6:26 PM, MigMit
wrote: And TDD is not the same as having tests, so please stop arguing for the second while pretending to be arguing for the first. Отправлено с iPhone
26 июня 2014 г., в 0:21, Frerich Raabe
написал(а): On 2014-06-25 18:05, MigMit wrote: Again, nobody here suggests that tests aren't necessary.
And rightfully so! TDD is not "a poor substitute for type safety" (as you put it in your earlier mail) at all.
In fact, strong type systems complement test-driven development very nicely. An expressive type system greatly simplifies testing because the compiler can catch a larger classes of mistakes and because - in the case of pure functions - the function signatures very clearly communicate the required input and output. There are no hidden dependencies and there's no setup or tear-down work required.
So I'd argue that test-driven development is relevant *because* of Haskell's type system, not *in spite of* it.
-- Frerich Raabe - raabe@froglogic.com www.froglogic.com - Multi-Platform GUI Testing
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- Johan Larson -- Toronto, Canada _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe