Obavijesti

News

Komentari 1

'Code review' igra ključnu ulogu u modernom razvoju softvera

'Code review' igra ključnu ulogu u modernom razvoju softvera

Java Developer Martin Blažević pojašnjava kako izgleda proces 'code reviwa' u Leapwiseu, zagrebačkoj softverskoj kompaniji koja razvija enterprise rješenja u području telekomunikacija, kibernetičke sigurnosti i interneta stvari (IoT)

Čist i održiv kod postulat je za stvaranje dobrog softvera. Pregledavanje koda, tzv. code review, ključno je u tom procesu. Java Developer Martin Blažević pojašnjava kako taj proces izgleda u Leapwiseu, zagrebačkoj softverskoj kompaniji koja razvija enterprise rješenja u području telekomunikacija, kibernetičke sigurnosti i interneta stvari (IoT).

Programski je kôd poput knjige koju stvara više autora, svaki sa svojim stilom pisanja, idejama, obrascima slaganja jezičnih elemenata, ali i razinom stručnosti. Osim vještog oblikovanja rečenica, svaki od koautora treba paziti na njihovu gramatičku ispravnosti, kontekst i značenje riječi, pravopis, ali i mnogo više od toga. Baš kao što profesionalni tekstovi prolaze kroz lektorsku provjeru, i programski kôd zahtjeva pregled i doradu prije nego što je spreman za upotrebu.

Svaka nova linija dodana u program koji već sadrži stotine tisuća ili milijune linija kôda povećava kompleksnost cjelokupnog rješenja. Rastom kompleksnosti, otežava se daljnji razvoj, održavanje te ispravljanje grešaka, a samim time rastu i troškovi rada takvog sustava.

Pregledavanje kôda, stoga, igra ključnu ulogu u modernom razvoju softvera.

Website,Programming,Code.,Modern,Tech.,Big,Data,Database,App.,Displaying

Zašto u Leapwiseu kod pregledavamo na tjednoj bazi?

Pouzdaniji i stabilniji proizvod

Tijekom pregleda kôda, pažnja se posvećuje različitim aspektima, uključujući zadovoljavanje poslovnih zahtjeva, provjeru dizajna, identifikaciju logičkih grešaka i uklanjanje nepotrebne složenosti. Nove funkcionalnosti moraju biti pokrivene automatiziranim testovima te biti u skladu s propisanim smjernicama, kao što su veličina funkcija, imenovanje varijabli, komentari u kôdu, korištenje oblikovnih obrazaca, dokumentacija i slično. Na taj način stvaramo kvalitetan softver, odnosno pouzdaniji i stabilniji proizvod.

Brža isporuka novih funkcionalnosti

Implementacija novih ili proširenje postojećih funkcionalnosti jednostavnije je ako je softver dobro strukturiran. Redovito održavanje i pregledavanje kôda pomaže u održavanju unutarnjeg dizajna sustava, što pozitivno utječe na produktivnost tima, a u konačnici i zadovoljstvo klijenata.

Pravovremena identifikacija problema i dugoročno smanjenje troškova

Sistematizirano proučavanje kôda pomaže i u identifikaciji problema već u fazi implementacije, smanjujući potrebu za kasnijim ispravcima i ponavljanjem svih koraka razvojnog procesa (dizajn, implementacija, testiranje i integracija). Osim toga, redovito pregledavanje kôda podiže kvalitetu isporučenog softvera i dugoročno smanjuje troškove održavanja.

Dijeljenje znanja

Širenje domenskog, ali i tehničkog znanja unutar razvojnog tima, još je jedno od prednosti takvog načina rada. Iskusniji članovi tima mogu prenijeti svoje znanje i dijeliti najbolje metode rada. Svi članovi svakodnevno imaju priliku istraživati i usvajati tuđi kôd i učiti jedni od drugih, čime se ostvaruje razumijevanje više aspekata velikog softverskog sustava.

U pozadini sistematičnog stvaranja softvera stoji sistematičan pristup razvijanju ljudi

U Leapwiseu naglasak stavljamo na stvaranje okoline u kojoj se zaposlenici kontinuirano razvijaju i unaprjeđuju svoje vještine. Posebnu pažnju stoga posvećujemo dijeljenju znanja unutar tvrtke.

Kako se korištene tehnologije donekle razlikuju od tima do tima, redovito održavamo edukacije i pregledavanje kôda na razini cijelog razvojnog odjela kako bismo dodatno podržali ovaj proces učenja, transparentnosti i međusobne razmjene informacija. Uz to, imamo jasno definirane interne smjernice za backend i frontend timove, koje nam služe kao pisani orijentir svih najboljih praksi i rješenja koja smo dosad usvojili. Tako svaka osoba u timu, uz usmenu, uvijek ima i pisanu pomoć u radu.

Iako je u konačnici bitna kvaliteta isporučenog proizvoda, jednako je važno pružanje platforme za rast i edukaciju zaposlenika te podrška da ostvare svoj maksimum i donose stručne i savjesne odluke u poslovanju.

Sve što je bitno, na dohvat ruke
Skini aplikaciju za najbolje iskustvo portala. Čitaj, komentiraj i budi uvijek u toku s najnovijim vijestima.
Komentari 1
Kraj kognitivnog privilegija: Što se događa kad inteligencija više nije samo ljudska?
PROMJENA PERSPEKTIVE

Kraj kognitivnog privilegija: Što se događa kad inteligencija više nije samo ljudska?

Ako inteligencija više nije rijetka, što onda postaje stvarna komparativna prednost? Upravo tim pitanjem bavit će se AI edukator Aco Momčilović na webinaru o utjecaju umjetne inteligencije na rad, moć i društvo
Imamo novu situaciju: Jeste li čuli za ‘quiet cracking’ i po čemu se razlikuje od burnouta?
PUCANJE 'NA SITNO'

Imamo novu situaciju: Jeste li čuli za ‘quiet cracking’ i po čemu se razlikuje od burnouta?

Definiciju burnouta, odnosno izgaranja pod prevelikim i dugotrajnim opterećenjem - znamo, no što kad zaposlenik ne izgara na takav način nego se polako ali sigurno lomi pod količinom nezadovoljstva?
Kad vas poslodavac više ne treba: Na koje načine danas ljudi dobivaju otkaz?
RASKID ODNOSA

Kad vas poslodavac više ne treba: Na koje načine danas ljudi dobivaju otkaz?

Prekid radnog odnosa rijetko je jednostavan i jasan. Formalni otkaz svi prepoznaju, no u praksi se sve češće susrećemo s različitim pristupima koji mogu utjecati na svakodnevni rad, motivaciju i planove