Kroz par mjeseci, više posla imam nadograđivanjem (i debugiranjem) tuđih (PHP) skripti nego pisanjem svojih. I kroz tih par mjeseci iznenadio sam se šta sve ljudi napišu. Skripta odradi i ispiše sve što treba, no što sve mora proći da bi to izgenerirala je druga priča. Tako da me to navelo da napišem svoja nekakva iskustva u programiranju i šta mi je olakšalo programiranje. Pa krenimo redom:

Uvlake

Kada pišete kod, uvlačite kod! Kod će biti pregledniji i vama, a i drugima. Uvlake se pišu kod grananja – kod C i PHP to bi bilo kod petlji (if, for, while, foreach…), kod htmla za sve unutar elementa. Uvlake možete pisati pomoću \t (tab, kako se to već kaže) te razmaka (preporuka dva razmaka). Važno je da od samog početka uvlačite po nekom pravilu kako bi kasnije sve bilo pregledno te ako imate logičku pogrešku da lako možete naći te otkloniti grešku.

Definirajte varijable

U programskom jeziku C nije niti moguće koristiti varijable, a da se prije toga ne deklariraju. Često vidim da PHP programeri korite varijable kao da su deklarirana i da mogu s njime što god hoće. E pa dragi programeri, to nije tako. Po početnim postavkama, samo striktne greške (pozivanje nepostojeće funkcije, klase, greška u sintaksi) se ispisuje i prekidaju skriptu dok sve ostale prolaze (uz određenu poruku ili bez nje). No, kad bi postavili error reporting na E_ALL vidjeli bi koliko pišete ispravan kod. Primjer, kod PHP svaku GET ili POST varijablu prvo morate provjeriti da li uopće postoji te onda tek možete uspoređivati vrijednosti ili je obrađivati. Također, ne možete koristiti varijablu koja ne postoji (znači, varijabla koja se poziva mora uvijek biti deklarirana).

Optimizirajte kod

Prilikom pisanja programa, točnije algoritama, dobro pazite kako ćete ga izvesti. Što manje petlji to je, u pravilu, algoritam bolji (nije sve u broju linija). Ako radite s bazom podataka, probajte koristiti malo naprednije opcije te uhvatite sve unutar jednog upita. Najgore je koristiti, no nekad je neizbježno, upit bazi unutar petlje (for, while). Ako se petlja vrti 15 puta, znači da ćemo morati 15 puta vršiti upite prema bazi podataka dok se taj upit možda mogao svesti na samo jedan jedini upit.

Pišite funkcije, klase – OOP

Funkcije i klase zaista su korisne. Prije početka programanja, skicirajte si – u glavi ili na papiru šta točno vaš program treba imati. Pokušajte izvući neku analogiju između nekih svari te napraviti funkciju ili klasu (modul). Pisanjem funkcije ili modula dobivate više prednosti: laka nadogradnja, mogućnost iskorištavanja istog na drugim projektima, preglednost koda, lakše otkrivanje grešaka (debug). Primjeri iskorištavanja klase bi bila klasa za povezivanje na mysql (povezivanje, izvlačenje, dodavanje, brisanje, uređivanje podataka). Primjera radi, kad imate takvu klasu, lako dodate kasnije brojač izvršenih upita, ispis greške (s određenim informacijama).

Odvojite generiranje od ispisa

Prilikom programiranje, držite dizajn odvojen od koda. Prvo izgenerirajte i prikupite sve potrebne informacije, a nakon toga krenite na iscrtavanje. U ovakvoj shemi možete preduhitriti grešku te odlučiti šta ćete s njom i kako ćete ju intepretirati. Primjer kako ne treba bi bilo ispis headera i navigacije te se unutar sadržaja dogodi greška prilikom pozivanje nepostojeće funkcije. Ona će se ispisati nakon navigacije i poslije nje neće biti ništa. Takva stranica ostavlja dojam neprofesionalnosti i dojam lošeg programera.

Pronađite greške

Testirajte svoj program pri nekim specifičnim parametrima (unutar granice normale). Ako radite mrežne aplikacije ili web stranice, provjerite sigurnost – lakše je potrošiti par sati na testiranje sigurnosti nego da ispravljate grešku nakon što netko iskoristi taj propust. Šteta će biti daleko veća, možda neki podaci i nepovratni te ćete extra minus bodove od naručitelja tog programa.

Share and Enjoy:
  • Twitter
  • Facebook
  • LinkedIn
  • Digg
  • del.icio.us
  • Blogplay
  • Google Bookmarks