TDD - timp pierdut în plus?

TDD - timp pierdut în plus? =========================== joi, 21 octombrie 2010 Înainte de a intra în ritmul TDD, sau privind dintr-o parte, s-ar părea că scrierea testelor înainte de a scrie codul propriuzis este mai mult o pierdere de timp. E destul de clar de ce pare aşa: scrii cam de două ori mai mult cod. Dar, asta este pe termen scurt. Dacă vrei să vezi cum lucrează o anumită funcţie, sau să experimentezi cu un framework, sau să încerci un nou limbaj de programare, ceeea ce în termeni de Extreme Programming se numeşte "spike", atunci da, nu are rost să faci TDD-ul decît pentru exerciţiu. Dacă vrei să faci ceva care ar putea dura zile sau săptămîni, atunci TDD-ul se răscumpără, cel puţin. Şi ca timp de lucru, şi ca calitate a rezultatului final. Dacă scrii teste, nu trebuie să verifici la fiecare nouă modificare dacă nu cumva s-a dărîmat altceva pe undeva. Dacă peste două luni trebuie să faci o schimbare în cod, atunci nici nu prea mai ţii minte care şi de ce depinde ca să poţi verifica manual. Şi cu cît e mai mare proiectul cu atît rentabilitatea TDD-ului creşte, pentru că verificare manuală ia din ce în ce mai mult timp, aici el se răscumăra ca timp, şi, de la o vreme încetezi să mai testezi anumite părţi pentru că, deja nu mai e practic să testezi manual o lună de lucru de cod, şi atunci, în speranţa că totuşi, poate nu s-a stricat nimic. Aici apar problemele de calitate. Dezvoltarea şi fixarea de bug-uri sunt două momente foarte clare unde este practic necesară testarea automatizată. Un alt moment este refactorizarea. Cînd pe parcursul dezvoltării ne dăm seama de un mod mai optim de a structura codul şi am vrea să-l reorganizăm pentru a-l simplifica, sau pentru a-l optimiza cumva, e destul de dificil să faci asta fără să ai o acoperire bună de teste automatizate. Şi dacă nu poţi refactoriza, programul ajunge să fie din ce în ce mai greoi, şi de la o vreme apare dorinţa să-l scoţi cumva la un capăt şi să nu mai ai de a face cu el. Refactorizarea este partea de *design* a TDD-ului, de fapt Test Driven *Design*, e o altă descifrare a acestui acronim, şi prin design aici se are în vedere schimbările la nivel înalt pe care le putem face în cod treptat, pe măsură ce înţelegem problema mai bine şi pe măsură ce învăţăm să folosim limbajul mai bine sau schimbări de nivel înalt care apar din alte considerente pe parcursul dezvoltării.
Sursa
2010-10-21 22:22:00



Comenteaza





Ultimele 25 posturi adăugate

19:18:28Vasile Tarlev: Nu eu am distrus Stadionul Republican. Atacant la echipa Bucuria. Despre Voronin și circ —» Sandu GRECU
19:13:06Tehnologie, energie verde și investiții în tineri: Istoria de succesului a Agro-Firmei „Plaiul Bîrlădean” 🌞 —» Sandu GRECU
19:07:23„Rolul meu ca primar nu este să fac promisiuni, ci să livrez rezultate” – Leonid Boaghi, primarul satului Sireți 💫 —» Sandu GRECU
17:04:57Fosta ambasadoare în India se judecă cu Ministerul de Externe —» Curaj.TV | Media alternativă
15:25:42Despre scandalul de la Dumbrava, BH (Live) —» Curaj.TV | Media alternativă
09:29:40DIN REVISTA DE TRADUCERI LITERARE —» Leo Butnaru
20:44:08De la pasiunea pentru arta culinară, la o carieră de succes în managementul ospitalității: Povestea Ninei Stratu 💫 —» Sandu GRECU
07:13:21Copyright: Deciziile vicedirectorului AGEPI, au costat autorii peste 7 milioane de lei 🤬🤬🤬 —» Sandu GRECU
04:40:33LACONICE —» Leo Butnaru
18:31:28Muzica unește generații. Gheorghe Mustea, sărbătorit la 75 de ani printr-un concert aniversar la Chișinău —» Curaj.TV | Media alternativă
18:31:28Muzica unește generații. Gheorghe Mustea, sărbătorit la 75 de ani printr-un concert aniversar la Chișinău —» Curaj.TV | Media alternativă
13:22:13Cu hijab-ul la defilare —» APort | "Pentru un român care știe citi, cel mai greu lucru e să nu scrie." I.L. Carag
18:56:52Păcălit de avocați și de magistrați (ru) —» Curaj.TV | Media alternativă
04:42:42METAMORFOZE ȘI (NE)LINIȘTI —» Leo Butnaru
19:07:21Primarul de Burlacu e din nou agresiv —» Curaj.TV | Media alternativă
17:01:45„Fii AgriCOOLtor!”: De la pasiunea pentru gătit la o carieră de viitor în gastronomie 💫 —» Sandu GRECU
05:36:29BACOVIA LICEAN... —» Leo Butnaru
14:27:38Moldoveanul care l-a bătut pe Figo. Secu-unicul: 29 de meciuri căpitan al URSS la fotbal. L-a vrut Bayern Munchen 💥🔥🚀 —» Sandu GRECU
12:47:29SCRIITORI - VICTIME ALE GULAGULUI —» Leo Butnaru
04:44:42DESPRE ȘAH ȘI NU NUMAI —» Leo Butnaru
18:49:09Handbalul a unit Moldova, România și Ucraina la Sîngerei: gazdele au câștigat Memorialul „Simion Prașcă” 🤾‍♂️ —» Sandu GRECU
08:54:32O întâlnire cu Teodor Buzu —» Biblioteca de Arte 'Tudor Arghezi'
20:01:51Un simplu Mulțumim, GEOTERMAL 🙏 —» Sandu GRECU
14:35:22„Cornova ungheneană” – la Biblioteca „Dimitrie Cantemir” —» BPR Ungheni's Blog
05:37:05RELAȚIA TA CU ALTER EGO —» Leo Butnaru