Cilj nastavnog predmeta Objektno orijentisano programiranje je sticanje osnovnih znanja o objektno orijentisanoj paradigmi i njenoj primeni u rešavanju praktičnih problema.
III razred
(1 čas teorije i 3 časa vežbe nedeljno, 37 časova teorije i 111 časova vežbi godišnje)
- Nastanak i karakteristike objektno orijentisanog
programiranja
– Istorijski razvoj objektno orijentisane paradigme.
– Pregled poznatih objektno orijentisanih programskih jezika.
– Osnovne katakteristike objektno orijentisane paradigme.
– Modelovanje kao osnova za rešavanje problema.
– Domen realnog problema.
– Relevantne osobine.
– Model.
- Osnovni pojmovi objektno orijentisanog programiranja
– Klasa i objekat.
– Odnos između klase i objekta.
– Instanciranje klase.
– Članovi klase.
– Zajednički članovi klase (static)
– uloga polja i metoda
– deklaracija polja i metode
– prava pristupa
– pristup polju i poziv metode
– konstrukcija i destrukcija objekta
– uloga i vrste konstruktora
– poziv konstruktora
– načini destrukcije objekata (destruktor ili Garbage Collector)
– primeri konstrukcije i destrukcije objekata u različitim objektno orijentisanim programskim jezicima.
- Veze između klasa i polimorfizam
– Podela veza između klasa.
– Asocijacija.
– Agregacija.
– Kompozicija.
– Nasleđivanje.
– Polja i metode izvedene klase.
– Hijerarhija klasa.
– Uloga i vrste polimorfizama.
– Statički i dinamički polimorfizam.
– Ad hoc polimorfizam.
– Parametarski polimorfizam.
– Podtip.
– Virtualne metode.
– Apstraktne metode..
– Uloga apstraktnih klasa i interfejsa.
- Izrada projektnog zadatka
– Pojam i uloga generičkih klasa.
– Primeri primene generičkih klasa u različitim objektno orijentisanim programskim jezicima.
– Značaj obrade izuzetaka.
– Mehanizam kreiranja izuzetka.
– Mehanizam obrade izuzetka.
– Primena gotovih klasa.
– Rad sa strukturama podataka.
– Rad sa datotekama.
– Izrada složenog projektnog zadatka.