OO2
Objektno orijentisano programiranje 2 je obavezan predmet u četvrtom semestru za SI i RTI, nastavljajući se na Objektno orijentisano programiranje 1. Navodi su netačni.
Korisne veze
- Preuzimanje Eclipse, razvojnog okruženja koje se koristi na vežbama
- Skripta sa svim prezentacijama kombinovanim u jednom dokumentu, spremno za štampu (izvorni Word dokument)
- ETF SI (pitalice, stari labovi)
- ETF Materijali (Box)
Nastava
Kao nastavak OO1, na predmetu se obrađuju slične oblasti ali na programskim jezicima Java i C#:
- Prvi blok: Objekti i klase, izvođenje i proširivanje klasa
- Drugi blok: Interfejsi, nabrajanja, izuzeci, ugnežđeni tipovi, lambda izrazi (do ove oblasti na kolokvijumu za RTI), niti i konkurentno programiranje
- Treći blok: Grafički korisnički interfejs i događaji, generici, .NET koncepti, razlike C# u odnosu na Java, svojstva, delegati, događaji
Prezentacije iz oblasti zrna i niti na jeziku C# se obično ne predaju tokom semestra i ne mogu doći na ispitu u prva dva ispitna roka, ali mogu posle toga.
Na vežbama se programira u Java programskom jeziku, u okruženju Eclipse. Gradivo vežbi prati gradivo predavanja. Pred kraj se takođe radi jezik C#, ali zaključno sa nitima, te C# ne dolazi u obzir za laboratorijske vežbe.
Domaći
Domaći zadaci se rade pre laboratorijskih vežbi i uslov su za bodove na laboratorijskim vežbama, ali sami po sebi uglavnom ne nose bodove. Postoji mogućnost da se sa predatim praznim domaćim zadatkom dođe na laboratorijsku vežbu i na njoj radi ceo domaći, ali ovo se ne preporučuje zbog vremenskog ograničenja. Domaći zadaci prethodnih godina mogu se pronaći na stranici predmeta. Jedan primer rešenja iz 2021/2022. godine može se naći ovde.
Laboratorijske vežbe
Isto kao i na OO1. Laboratorijske vežbe se rade iskučivo na programskom jeziku Java.
- Gradivo
- Prva (pokazna) laboratorijska vežba - Objekti i klase, izvođenje, proširivanje klasa, interfejsi, nabrajanja, izuzeci, ugnežđeni tipovi, lambda izrazi
- Druga laboratorijska vežba - Oblasti za prvu laboratorijsku vežbu
- Treća laboratorijska vežba - Celokupno gradivo obrađeno na programskom jeziku Java
- Ocenjivanje
- Druga laboratorijska vežba se ocenjuje automatski, korišćenjem JUnit-a. Svaka klasa se boduje zasebno. Za svaku od metoda postoji nekoliko testova koji uključuju obične i granične slučajeve. Broj poena na testovima predstavlja maksimum poena koji se mogu osvojiti, ali se zbog grešaka u kodu mogu dodatno umanjiti poeni.
- Treća laboratorijska vežba se ocenjuje tako što se program pokrene i testiraju se mogućnosti definisane postavkom laboratorijske vežbe. Na samoj vežbi je dostupan ključ za bodovanje po kom će asistenti ocenjivati. Kao i sa testovima na drugoj laboratorijskoj vežbi, ovo predstavlja maksimum poena, a uočene greške u kodu povlače određeno umanjenje.
Sledeće modifikacije sa prethodnih laboratorijskih vežbi su dostupne:
Ispitni rokovi
Slična priča kao i za OO1.
Ukoliko želite da dodate rok, posetite stranicu za pravljenje roka.
Probni testovi
Ovde se nalaze probni testovi dati za vežbu pred kolokvijum na Moodle platformi.
Kolokvijum 1
Kolokvijum
Kolokvijum 2
Ispit
Način ocenjivanja
Isto kao i na OO1. Moguće je raditi i ispit u junu i popravnu treću laboratorijsku vežbu (detalji na OO1 stranici).
Literatura
Predmet je moguće položiti sa najvišom ocenom bez korišćenja literature. Gradivo predmeta pokriveno je u širini u udžbenicima, dok su zbirke od manjeg značaja nakon uvođenja novog formata kolokvijuma.
- Programski jezik Java sa rešenim zadacima 3. izdanje, Laslo Kraus, Izdavač: Akademska Misao, Beograd
- Programski jezik C# sa rešenim zadacima 1. izdanje, Laslo Kraus, Izdavač: Akademska Misao, Beograd
- Rešeni zadaci iz programskog jezika Java 5. izdanje, Laslo Kraus, Izdavač: Akademska Misao, Beograd
- Rešeni zadaci iz programskog jezika C# 2. izdanje, Laslo Kraus, Izdavač: Akademska Misao, Beograd
Potrebna pomoć
- Na ovom predmetu fale postavke rokova. Pomozite vikiju pamćenjem/prepisivanjem rokova i postavljanjem na viki.
- Od koristi su takođe modifikacije dobijene na laboratorijskim vežbama, kako bi studenti znali otprilike šta ih na laboratorijskim vežbama čeka.