Dafed #19: Šta povezuje izradu ćupova i Test Driven Development?

Dafed #19: Šta povezuje izradu ćupova i Test Driven Development?

U sredu 5. marta, u Svečanoj sali Fakulteta Tehničkih nauka u Novom Sadu, održao se devetnaesti po redu DaFED. Prisutnima je na temu Test Driven Developmenta (TDD) svoje praktične savete preneo Boban Mikšin, partner i CTO kompanije Vega-IT Sourcing.

dafed_izvestaj_1

U sredu 5. marta, u Svečanoj sali Fakulteta Tehničkih nauka u Novom Sadu, održao se devetnaesti po redu DaFED. Prisutnima je na temu Test Driven Developmenta (TDD) svoje praktične savete preneo Boban Mikšin, partner i CTO kompanije Vega-IT Sourcing.

Otvarajući predavanje zanimljivim primerom izrade ćupova na predmetu Vajarstvo, Boban je posetiocima dočarao poentu ranog uvođenja testova u proces izrade gotovog proizvoda. Takođe, sa prisutnima je podelio realan primer iz prakse, gde je kao zadati projekat sa fiksnim rokom uz primenu TDD-a od samog starta projekat na kraju rezultovao sa prvim uploadom na staging bez i jednog baga.

Šta je potrebno da bi ste ovladali ovom veštinom?

TDD kate ili jednostavni primeri koji vas polako uvode u problem i teraju da inkrementalno pišete deo svake funkcionalnosti kroz testove, omogućavaju developerima koji se prvi put sreću sa ovim pristupom da lakše i brže savladaju materiju. Kako Mikšin kaže, da bi ste ovladali ovom tehnikom potrebno je svega pola sata dnevno, tokom perioda od mesec dana, ističući pritom da je poenta u doslednosti i predanosti.

Boban je prisutnima predstavio sajt koji je i njemu samom pomogao da savlada osnove TDD-a.

Cyber-dodjo – sajt na kome se nalaze TDD kate koje omogućavaju čak i početnicima da se upoznaju sa osnovama TDD-a i počnu da ih primenjuju u svom radu sa lakoćom. TDD kate na ovom sajtu sadrže detaljan opis funkcija (imena promenljivih, procedura, itd.)  koje developer treba da napiše i time forsira developera da se fokusira na sam problem.

Zašto je dobro koristiti TDD?

Ukoliko postoje i dobro su napisani, testovi eliminišu potrebu da se prilikom izrade koda dešavaju situacije gde određeni moduli moraju da se menjaju kako bi funkcionisali u okviru celine. Često to bude više modula i javi se lančana reakcija, gde promena u jednom modulu zahteva promene i u ostalim modulima – što dovodi do povećanja vremena potrebnog za završetak projekta. TDD-om se ovaj slučaj sprečava.

dafed_izvestaj_2

Primena Test Driven Development metodologije u procesu izrade projekta nije određena njegovom veličinom, već je preporuka da se koristi na projektima svih veličina.

TDD menja ne samo način uvođenja i pisanja testova nego i način razmišljanja i pisanja produkcionog koda:

  • Prvo implementirajte osnovni/idealan slučaj, pa onda “pokrijte” sve granične slučajeve.
  • Ukoliko se odlučite da primenite TDD, pišite sve testove ili nemojte koristiti TDD. Polovično pisanje testova je samo iracionalno potrošeno vreme.
  • Kod integracionih testova vrlo je bitno definisati testove koji su nezavisni od bilo kojih drugih. Postavka je bitna i treba da sadrži sve ono što treba da se unese u bazu a neophodno je da bi se test izvršio.

Na kraju, Boban je istakao kako je praksa ključan i neophodan faktor kako bi se pisali dobri testovi.

Ukoliko niste bili u mogućnosti da prisustvujete DaFED-u, kompletan snimak predavanja možete pogledati na zvaničnoj DaFED Youtube stranici.

[youtube]http://www.youtube.com/watch?v=TFSYJFe-SbU[/youtube]

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Mobilne aplikacije

ZET-ov štrajk iznjedrio nova digitalna rješenja za prijevoz po Zagrebu

Zagreb je jutros ostao bez redovitog tramvajskog i autobusnog prometa, no građani su brzo počeli tražiti alternativna rješenja. Uz organiziranje zajedničkih vožnji, pojavilo se i nekoliko digitalnih projekata koji pokušavaju povezati vozače i putnike.

Vodič

Imate pretplatu na AI alate? Evo što računovođe kažu o ispravnom evidentiranju

U novoj kolumni Bruno Cvitanović, direktor računovodstvenog i konzultantskog servisa Brojevi objašnjava kako računovodstveno tretirati AI alate, što vrijedi za poduzetnike izvan sustava PDV-a i na koje pogreške treba paziti.

Programiranje

Tim od šest developera, dva QA-a i jednog Product Ownera postaje prošlost

Florian Krause ima trideset godina iskustva u razvoju softvera, jedan propali startup i čvrsto mišljenje: tim od šest developera, dva QA-a i jednog product ownera postaje prošlost. Na The Geek Gatheringu u Osijeku objasnio je čime se takva postava zamjenjuje.

Što ste propustili

Pametni automobili

Napokon smo se provozali Verneovim robotaksijem!

Nakon što smo u Zagrebu bezuspješno pokušali uhvatiti Verneov robotaksi putem Uberove aplikacije, zvijezde su se posložile i mi smo dobili poziv koji se ne odbija.

Umjetna inteligencija

Tko zbog AI-ja i dalje ulaže u ljude, a tko otpušta 50% radne snage?

Dok neke tvrtke nastavljaju i zapošljavati i ulagati u AI, druge su odabrale samo potonje. Kako različite tvrtke pristupaju promjenama na tržištu, doznali smo na Automation Summitu.

Novost

Gamepires najavio otpuštanja, smanjuje tim koji radi na SCUM-u

Gamepires, koji stoji iza igre SCUM, smanjuje broj zaposlenih zbog zahtjevnih tržišnih uvjeta. Objava dolazi nekoliko mjeseci nakon što je studio preuzeo britanski Splash Damage.

Vodič

Imate pretplatu na AI alate? Evo što računovođe kažu o ispravnom evidentiranju

U novoj kolumni Bruno Cvitanović, direktor računovodstvenog i konzultantskog servisa Brojevi objašnjava kako računovodstveno tretirati AI alate, što vrijedi za poduzetnike izvan sustava PDV-a i na koje pogreške treba paziti.

Veliki intervjui

Ako AI može napraviti film ili igru, što ostaje kreativcima? Odgovara CEO Nanobita

Može li umjetna inteligencija promijeniti način na koji nastaju filmovi i igre, a da pritom ne žrtvujemo kvalitetu priče i kreativnu viziju? Nanobit već testira odgovor na to pitanje, razvijajući AI produkcijske procese koji otvaraju mogućnost stvaranja sadržaja velikom brzinom.

Netokracija Podcast

Dekan FER-a: AI ne može zamijeniti temeljno znanje inženjera

Umjetna inteligencija mijenja način na koji radimo, ali bez temeljnih znanja nema ni kvalitetnih inženjera ni ozbiljnog tehnološkog napretka. U razgovoru s dekanom FER-a otkrivamo zašto je važno ulagati u istraživanje i razvoj, kako povezati fakultete i industriju te gdje se otvaraju nove prilike za Hrvatsku – od robotike i fizičke umjetne inteligencije do razvoja visokotehnoloških proizvoda.