Upute za izradu programa iz kolegija Računarski praktikum II



Ove upute se odnose na izradu programa za kolokvije, domaće zadaće i programe koji će biti predavani za ocjenjivanje. Molimo da ih se strogo  pridržavate.




1. Opće upute za izradu programa 


a) Svi programi moraju biti izrađeni u Java programskom jeziku.

b) Prevodioc i virtualna mašina za Javu mogu biti izabrani po volji. Međutim, programi moraju se moći prevesti i izvršiti na službenoj verziji prevodioca i virtualna mašine koji ovaj kolegij koristi.

c) Nije dozvoljena izrada programa niti jednog dijela programa koristeći čarobnjake (eng. wizarde) koji dolaze sa profesionalnim razvojnim alatima.

d) Nije dozvoljena upotreba već gotovog koda osim onog koji dolazi u klasama koji čine Java API ili koji se dobije na vježbama.

e) Svaki student je dužan samostalno izraditi svoje programe. Programi koje je izradio netko drugi neće biti tolerirani. Nema smisla pokušavati predavati tuđe programe. To će se jednostavno otkriti, a vama će samo biti neugodno i morat ćete izraditi dodatne programe pred nama. Ujedno, sebi ćete uskratiti zadovoljstvo koje može donijeti suvereno vladanje jednim programskim jezikom. Naposljetku, zapitajte se zbog čega ste ovdje, ako ne da naučite programirati.

Napomenimo još da se sav potreban software moze besplatno dobiti.



2. Dizajn i implementacija Java programa

Ovdje se nalaze upute i sugestije kako dizajnirati i implementirati programe za kolokvije, domaće zadaće i za predaju. Grubo govoreći, dizajn i analiza aplikacije je prvi korak u izradi aplikacije. To je najčešće najteži korak u izradi profesionalnih aplikacija i obično se prepušta najiskusnijim programerima. Zato je važno da studenti vježbaju pravilan dizajn aplikacije. Nakon toga slijedi implementacija. Mi ohrabrujemo proučavanje i upotrebu već gotovih klasa koji dolaze u Java API. Korištenje (eng. reuse) već gotovog koda je jedna od osnovnih ideja u svim jezicima koji podržavaju tehnike objektno orijentiranog programiranja, kao što su C++, Java, Perl, SmallTalk i mnogi drugi. Postoji opsežna literatura na temu dizajna i implementacije aplikacija tim tehnikama. Mi preporučamo besplatne knjige koja se isto tako nalaze na CD-u za ovaj kolegij.

Prije nego navedemo upute i sugestije za dizajn programa, napomenimo još da se na ove upute i sugestije može gledati kao i na vrlo pojednostavljeni skup pravila koji određen programerski tim (dogovorno) koristi u realnoj situaciji (npr. u radnoj organizaciji). Detaljnije o dizajnu i implementaciji programa u Javi možete naći u preporučenoj literaturi.



a) Programska rješenja trebala bi biti što je moguće jednostavnija i elegantnija

b) Problem kojeg trebate riješiti podijelite u dijelove. Ako dio programa vidite kao zasebnu cijelinu, napravite klasu (eng. class) od njega.

c) Izjegavajte pisanje velikih klasa u kojima se nalaze varijable i metode koje su nepovezane u svom smislu. Razbijte kod u klase, a klase podijelite u pakete (ako treba). Korisno je katkada sakriti implementaciju klase iza sučelja (eng. interface) od njezine implementacije, ali u tu svrhu ne koristite apstraktne klase (eng. abstract classes).

d) Klase, njezine metode i sve ključne varijable moraju imati smislena imena da bi kod sadržavao što jednostavnije (ali jasne) komentare. Međutim, svaka klasa, kao njezine metode i varijable moraju biti propisno i smisleno komentirane. Izbjegavajte trivijalne komentare (npr. //ova je varijabla tipa integer ako je jasno da je varijabla tipa integer).

e) Klasa mora imati javno sučelje (eng. public interface). Ne koristite javne (eng. public) varijable u radu s klasama. Umjesto toga koristite set i get metode kao što je objašnjeno na vježbama i predavanjima. Što manje metoda u klasi trebalo bi biti javno.

f) Sve konstante moraju imati smislena imena. Koristite ta imena umjesto njihovih stvarnih vrijednosti u svom kodu (tj. ne koristite "magic numbers"). Na taj način se program lakše čita i održava .

g) Izbjegavajte korištenje ključne riječi static.

Povratak na glavnu stranicu.