Znakovi da ste dobar programer

Sadržaj
To je pitanje koje mnogi mogu postaviti i bez obzira na to koliko certifikata mogli imati ili imati radnog iskustva u području razvoja, to ne znači da smo dobri programeri, ali pogledajmo neke od ovih znakova koji nam govore da smo na prava traka.
Bilo da radimo u stolnim aplikacijama ili u web razvoju, uvijek će biti bolje koristiti okvir koji nam pomaže u procesu razvoja, daje nam standardiziranu strukturu i određene stvari, poput prijateljskih URL -ova, ORM -a, predložaka, upravljanja zadanih sesija, datoteka, pa čak i slika, pa nećemo morati ponovno izmišljati kotač, čime se štedi vrijeme u razvoju i osigurava da krajnji proizvod zadovoljava funkcionalne i sigurnosne standarde.
Ako još niste iskusili moć okvira ili ih već poznajete, ali želite malo dublje ući u njih, možete proći kroz JavaScript odjeljke i pogledati Knockout.js, Express, Sails, AngularJS pa čak i jQuery tutoriali. Ako više volite PHP školu, imamo Laravel i Yii vodiče, a ako vam se sviđaju izazovi, imamo vodiče za Python okvire poput Djanga i Flaska.
Iskusni programeri iz prve ruke znaju da je kod napisan jednom, ali se može pročitati više puta. Zato njegovo pisanje mora slijediti konvencije imenovanja, kako u nazivima varijabli, klasama, metodama, pa čak i konstantama. To će dati mnogo jasniju sliku drugom razvojnom programeru koji mora ući u naš kôd ili samo jednom koji radi s nama i mora dodati funkcionalnost našem kodu.
Osim toga, ako ovome dodamo komentare, našoj aplikaciji dajemo mnogo višu razinu održavanja, a svi drugi programeri koji je moraju izmijeniti već će znati što svaka stvar u njoj radi.
Mnogo puta ćemo morati stvoriti novu funkcionalnost, ali to neće uvijek biti slučaj i zato mora postojati ponovna upotreba koda jer je beskorisno provesti tjedan dana u razvoju funkcionalnosti i to u budućnosti moramo učiniti opet. Dobri programeri idu dalje, imaju generičke i standardne rutine u svojim osobnim spremištima koje mogu ponovno koristiti kad god požele, postoje čak i službena spremišta poput NPM -a za Node.js ili Gems za Ruby koji nam omogućuju da pronađemo knjižnice koje možemo ponovno upotrijebiti.
Nikada ne bismo trebali vjerovati da je naš kôd savršen i bez grešaka samo zato što naša aplikacija radi ispravno. Za to postoje automatizirani testovi ili možemo upotrijebiti okvire za jedinične testove poput Jasmina za testiranje svih komponenti naše aplikacije.
Korištenje kontrole verzija, a posebno Gita, postalo je nužno u današnje vrijeme, ne samo da nam pomaže imati sigurnosnu kopiju našeg koda, već nam pomaže i u praćenju promjena u njemu, a osim što utječe na suradnički rad između razvoja timovi.
Postoji nekoliko osjetljivih sigurnosnih pitanja u smislu razvoja aplikacija, imamo SQL ubrizgavanje, CSRF, XSS, pa čak i fiksiranje sesija. Srećom, ako koristimo okvir i oni implementiraju ova sigurnosna pitanja, međutim, nikad nas ne boli što znamo u čemu se sastoje te prijetnje i kako ih napasti.
Postoji bezbroj alata koji nam pomažu u razvoju, ne samo okviri ili paketi, već alati ili knjižnice koji nam daju dodatnu funkcionalnost kao u slučaju Grunt ili CoffeeScript, čak i korištenje knjižnice koja proširuje našu aplikaciju, kao što je Tablice podataka za izradu izvješća i to u kombinaciji s okvirom dat će nam puno potpuniji komplet za razvoj.
Konačno, važno je da svaki dobar programer zna konfigurirati okruženje u kojem će se aplikacija postaviti, iako je poznato da postoje posebne uloge u radnim timovima, a među njima imamo osobu koja je zadužena za konfiguriranje poslužitelja, Kao i proizvodno i razvojno okruženje, vrlo je važno znati o tome jer će nam to, između ostalog, uštedjeti vrijeme u rješavanju problema okruženja, kvarova na platformi.
Kako vidimo da smo dobar programer ne ovisi o iskustvu ili certifikatima, ovisi o detaljima koji se mogu činiti beznačajnima, ali koji nam zajedno daju osnovu za razvoj boljih aplikacija i stvaranje radne strukture koja će nam pomoći tijekom cijele naše profesionalne karijere.

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave