On Thursday, 20 June 2013 at 07:36:41 UTC, Paulo Pinto wrote:
...
Just left enough context to ask the following question, I hope I did not left out too much.

How does TDD then help how a user of my application will use the application UI?

This is the area where I usually make TDD evangelists go speechless in conferences, as they start to present ad-hoc solutions and end up changing subject.

--
Paulo

Sure. The user, in this case, isn't the user of your application. The "user" is the person using your API (other programmers). TDD has nothing to do with the visual design of your application and everything to do with the software engineering design. It's to help guide you to the answer to the questions "how should I define the behavior of this class/how should this class be used in practice?"

If your question is how to use TDD for UI, the answer is that you might use TDD for defining the interface to your UI API. But defining an actual UI using TDD is usually kind of awkward and I feel it's missing the point. I'm not saying I haven't seen it done, but typically what people do to "test first" UI designs isn't really what TDD was meant to do, I feel.

---

I guess the short answer is that TDD doesn't make sense to be used for that (IMO). Just like a knife can't be used to cook an egg. I suppose this is where the phrase "there is no silver bullet" should be put? :)

Reply via email to