_Erikje_ schreef op donderdag 29 april 2010 @ 11:38:
[...]
mijn god.
ben jij zo'n ontwikkelaar die maar wat aan kloot en aan het einde van de dag iets werkend heeft maar niet met zekerheid kan zeggen dat het bug-vrij is... Ik zou TDD jou juist aanraden omdat het je verplicht langer dan 2ms over je code na te denken.
oh, ik zie het al, HBO informatica
Ik zal maar aannemen dat je lichtelijk aan het plagen bent

.
En ik doe al aan TDD, maar omgekeerd, en dan alleen als er tijd en/of budget voor is. Want dat is het probleem, zowel bij ons als bij de partijen waar we mee werken - alles moet snel en het liefst gisteren klaar, want anders duurt het te lang voor de directe.
Voorbeeld: Webshop.
Voorbeeld 2: Ebooks.
Voorbeeld 3: Iets dat voor het WK klaar moet zijn.
Aan de andere kant is dat ook weer goed natuurlijk - mijzelf kennende, als ik 'onbeperkte' tijd voor een project krijg ga ik eindeloos refactoren en tests maken en van alles uitproberen, en is het een project zonder einde.
quote: Deathraven
Daarom werkt het ook niet om achteraf nog even TDD te gaan doen, want als je het goed wilt doen moet je vervolgens vaak je complete object model refactoren om het beter testbaar te maken (uitzonderingen daargelaten).
Hier heb je gelijk in. Aan de andere kant, dankzij 'inverse TDD' heb ik de hele logica achter interfaces en dergelijke geleerd, maar ook goed ontwerp. Want je weet dat je code kud is als je unit tests kud moeten zijn om het te testen

.
TDD is echt een vooruitgang. Als je eenmaal een complete suite met testcases hebt dan ben je zo blij dat als je een wijziging hebt gemaakt je met een druk op de knop kunt verifiëren dat alles nog gewoon werkt (met in achtneming van je dekkingsgraad natuurlijk).
Vooral dat laatste is van belang, en zelfs met het nagenoeg onhaalbare 100% (+ aangezien er dan een groot deel 'onzinnige' test zullen zijn) kun je niet garanderen dat je code doet wat het hoort te doen - daarvoor zijn er acceptatie- en integratietests.
En zelfs met slagende tests is het nog maar de vraag of de klant tevreden is

.
quote: whoami
Je begint er aan, en je begint code te schrijven zoals je die class eigenlijk zou willen gebruiken.
In principe wel, maar ik denk nog van binnen naar buiten (vanuit een class gezien). Denk ik, tenminste.
Nouja, ik heb net gehoord dat ik een contract voor onbepaalde tijd krijg, dus dat zal wel goed zitten.
Unrelated, Trac opzetten is best een flinke klus

. Konden ze niet gewoon een installer maken waarbij je gelijk integratie hebt met Alles?