>I have more (I wrote a bit of that in my book) but heading out for now.
>From your book:

TDD Is Hard to Apply

We noticed a worrisome trend in the Test-Driven Development reading 
material that we have seen over the years. A lot of it focuses on very 
simple, textbook problems such as:

   - A scorecard for bowling
   - A simple container (Stack or List)
   - A Money class
   - A templating system
   
There is no question in our minds that Test-Driven Development works 
wonders on these examples, and the articles describing this practice 
usually do a good job of showing why and how.

What these articles don’t do, though, is help programmers dealing with very 
complex code bases perform Test-Driven Development.

...
we certainly share the perplexity of developers who like the idea of 
Test-Driven Development but can’t find any reasonable way to apply it to 
their day jobs. 

I don't think the above is suggesting that TDD only works on simple 
problems, but if it is, then in "Straw Man TDD" [1] Jason Gorman talks 
about the myth that "TDD Only Works On Simple, Toy Examples".

If your book is complaining about how TDD is taught, then Justin Searls 
recently wrote a very interesting post: The Failures of "Intro to TDD" [2]. 
Robert Martin replied with the equally interesting "The Domain 
Discontinuity" [3].

[1] http://codemanship.co.uk/parlezuml/blog/?postid=1170
[2] 
http://blog.testdouble.com/posts/2014-01-25-the-failures-of-intro-to-tdd.html
[3] http://blog.8thlight.com/uncle-bob/2014/01/27/TheChickenOrTheRoad.html

Philip

On Friday, 21 February 2014 21:47:44 UTC, Cédric Beust ♔ wrote:
>
> Not a big fan for multiple reasons:
>
> - TDD introduces a lot of churn, especially in the early phases of your 
> coding. If you're beginning to work on a problem from scratch, you will 
> most likely throw one or two initial implementations before reaching 
> something you feel is acceptable as a v1.0. Writing tests for any version 
> prior to this one is a waste of time.
>
> - TDD encourages myopic design. You are more focused on writing your code 
> so it can pass trivial unit tests than thinking about how your overall 
> design will fit with the rest of the code base.
>
> - TDD has high friction. If you are very zealous with TDD, every minor 
> change in the code base will cause you to update tests. I'm okay with a 
> little bit of that (it's the purpose of tests) but not to the extent that 
> TDD promotes.
>
> - It overly privileges unit tests over functional tests, and my default 
> position is that functional tests are more important (if I have the time to 
> write a functional or a unit test and just one, I'll always go for 
> functional because these tests have a direct impact on users, as opposed to 
> unit tests which are just a convenience for you, the developer).
>
> I have more (I wrote a bit of that in my book) but heading out for now.
>
> -- 
> Cédric
>
>
> -- 
> Cédric
>
>
>
> On Fri, Feb 21, 2014 at 1:08 PM, Rakesh <[email protected]<javascript:>
> > wrote:
>
>> Hi,
>>
>> **usual disclaimer about not looking to start a flame war**
>>
>> A friend of mine recently interviewed at a company for a position as an 
>> iOS dev.
>>
>> The topic of TDD came up and my friend stated that she was a big fan.
>>
>> The interviewer on the other hand, said he wasn't and that the 'jury was 
>> still out'.
>>
>> I'm curious, who is the 'jury'?
>>
>> As for myself, if i can join a team doing tdd or be in a position where i 
>> can, i'm happy.
>>
>> This group is stocked with experienced devs so i'm not looking to convert 
>> anyone, but surely by now, the nay sayers are in the decline?
>>
>> Thoughts?
>>
>> Rakesh
>>
>> Ps kevin, REALLY interested in your opinion.
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Java Posse" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To post to this group, send email to [email protected]<javascript:>
>> .
>> Visit this group at http://groups.google.com/group/javaposse.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups "Java 
Posse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/javaposse.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to