Tehničko veleučilište u Zagrebu · Zagreb

Objektno orijentirano programiranje

ECTS: 7 · Semestar: 2 · Ukupna satnica: 60 h

Kolegij

Opis kolegija

Povijest i koncept objektne paradigme. C++ u odnosu na C (2). U/I u C++ i druge specifičnosti C++ sintakse. U/I u C++ i druge specifičnosti C++ sintakse Pojam objekta, model objekta, svojstva i ponašanje objekta (2) Klasa ili razred, prava pristupa, javno sučelje. Konstruktor, destruktor, članske funkcije, preopterećenje funkcija. Instanciranje objekta, statičko i dinamičko (new i delete operatori) Kopiranje objekata, kopirni konstruktor, pridruživanje objekta. Konstantni članovi i objekti. Refererence. Prijateljske funkcije. Preopterećenje operatora. Koncept nasljeđivanja, deklaracija i implementacija izvedenih klasa, prava kod nasljeđivanja Pristup funkcijama, nadređenje, preopterećenje. Pravila za konstruktor u izvedenoj klasi. Koncept polimorfizma. Virtualne članske funkcije, virtualne klase Predlošci funkcije i predlošci klasa. Primjena STL biblioteke. Primjena predložaka. Rješavanje iznimki. Uređivanje imenovanog prostora. Stvaranje projekta pomoću MFC klasa.

Sadržaj

Ishodi učenja

  1. identificirati temeljne razlike između proceduralne i objektne paradigme i razumjeti temljne značajke objekta
  2. oblikovati klasu na temelju definicije svojstava i ponašanja objekta
  3. oblikovati programsko rješenje u C++ pomoću vlastitih klasa primjenom koncepta objektno orijentirane paradigme.
  4. osmisliti operatorske funkcije u klasama C++ baziranog programa.
  5. dizajnirati objektno programsko rješenje korištenjem predložaka iz STL C++ biblioteka.
  6. napisati vlastite predložke klasa i funkcija pri rješavanju objektno orijentiranih problema.
  7. razlikovati temeljne razlike između objektno orijentiranih programnskih jezika (C++, C#, Java).
  8. povezati znanja stečena u osnovama OO paradigme s različitim rješenjima API klasa u C++ za programiranje GUI sučelja.
Resursi

Literatura

Obavezna literatura

  • M. Slamić: Elektronički sadržaji predavanja (PPT prezentacije) na web stranici predmeta na Tehničkom veleučilištu u Zagrebu, 2012., www.tvz.hr.
    Boris Motik,Julijan Šribar:Demistificirani C++,treće dopunjeno izdanje,m Zagreb, Element , 2010.

Dodatna literatura

  • D. Radošević, Programiranje 2, TIVA Tiskara Varaždin, 2007.
    Eckel ? ?Thinking in C++ Vol 1 i Vol 2?, Prentice Hall, 2003. http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html
    Stroustrup ? ?The C++ Programming Language?, Addison-Wesley, Third edition, 2004.
    Željko Kovačević, ?C++ Analiza i primjena?, Školska knjiga, 2004.
Nositelji

Nositelji kolegija

Izvođači

Izvođači nastave