Predmet: Objektno orijentisano programiranje 2
(17 -
SE1006) Osnovne informacije
Program predmeta
Program se primenjuje od 20.11.2012.. Upoznavanje studenata sa naprednim konceptima objektno-orijentisanog pristupa upotrebom programskog jezika Ce++ i razvojem programa istovremenom upotrebom više programerskih paradigmi (multi-paradigm programming) Student koji uspešno završi kurs upoznat je sa mogućnostima programskog jezika Ce++; ume da efikasno koristi elemente standardne biblioteke; shvata osnovne principe na kojima je objektno orijentisan jezik razvijen; upoznat je sa prednostima i nedostacima jezika i ume da prepozna situacije u kojima je primereno koristiti jezik Ce++; svestan je na koji način jezik podržava različite pristupe programiranju i prepoznaje prednosti i nedostatke svakog od podržanih pristupa; Uvod: osnovne karakteristike jezika, evolucija jezika. Organizacija programa: zaglavlja i biblioteke. Struktura Ce++ programa: globalne funkcije, funkcija main(), klase, šabloni (funkcija i klasa). Automatski generisane funkcije članice: konstruktori i operatori dodele. Tokovi podataka: ulaz i izlaz, datoteke, prilagođavanje tokova. Kategorije izraza: rvalue, lvalue, xvalue, glvalue, prvalue. Prenošenje vrednosti (parametri potprograma i povratna vrednost): po vrednosti, po pokazivaču, po lvalue referenci, po rvalue referenci. Greške u programu: reakcija programa na pojavu greške, pojava izuzetka, obrada izuzetaka, klase izuzetaka iz standardne biblioteke. Elementi standardne biblioteke: znakovni nizovi (stringovi), kontejneri, iteratori, algoritmi. Kontejneri: sekvencijalni (vektor, stek (stog), lista, red), asocijativni-uređeni i asocijativni-heširani (skup, mapa, multi-skup, multi-mapa). Iteratori: ulazni, izlazni, jednosmerni u napre i u nazad, bidirekcioni, sa direktnim pristupom. Algoritmi: za pretraživanje, izmenu, uređivanje, operacije sa hipom (heap). Predavanja; Računarske vežbe; Konsultacije. Ocena ispita se formira na osnovu uspeha sa laboratorijskih vežbi i teorijskog dela ispita.
|