TDD is BS?
QAston
qaston at gmail.com
Fri Jun 21 21:27:34 PDT 2013
On Thursday, 20 June 2013 at 12:16:54 UTC, deadalnix wrote:
> On Thursday, 20 June 2013 at 10:13:53 UTC, Jacob Carlborg wrote:
>> On 2013-06-20 00:47, Nick Sabalausky wrote:
>>
>>> - Writing a unittest first forces the API to be designed
>>> before the
>>> implementation is written. But implementation is necessary
>>> to flush
>>> out unexpected design requirements (If you think you can
>>> always
>>> come up with an appropriate design and interface before
>>> implementing, then you're just plain wrong). Sometimes the
>>> appropriate design and API is obvious. Sometimes it isn't.
>>> When it
>>> isn't, then TDD skirts dangerously close to some of the
>>> problems of
>>> "Waterfall Model". Sure, TDD advocates
>>> refactoring-as-needed, but I
>>> can do that with or without TDD.
>>
>> Just because you have written a test doesn't mean you cannot
>> change it. Perhaps you come up with a better API design, then
>> change the tests.
>
> When I start something, it isn't always clear what mental model
> of the problem fit best the problem. I usually wait until I
> know I have a consistent mental model of the problem to write
> test. Otherwise, tests tend to get into your way to change the
> API( because you need to change tests as well. I start writing
> test when I know what kind of API make sense (it isn't always
> finished, but I know what it will look like overall).
>
> Which lead to TITMOD, test in the middle of dev.
You should write a book on that, it'd be a total paradigm shift
for the non-yet-believers of TITMOD.
More information about the Digitalmars-d
mailing list