Objektno programiranje 1 Šifra: 130807 | 6 ESPB

Opšte informacije
Nivo studija:
Godina studija: 2
Semestar/Trimestar: 4
Uslov: Poznavanje programskog jezika C.
Cilj: Upoznavanje sa paradigmom objektno orijentisanog programiranja i osposobljavanje studenata da projektuju i pišu složene objektno orijentisane programe na jeziku S++.
Ishod: Studenti će biti osposobljeni da uz pomoć savremenog razvojnog okruženja razviju složene programe na jeziku S++.
Sadržaj predmeta
Teorijska nastava:
  1. Osnovni pojmovi objektno orijentisanog programiranja: apstrakcija, enkapsulacija, preklapanje oparatora, nasleđivanje polimorfizam.
  2. Ugrađeni i izvedeni tipovi. Dinamički i privremeni objekti. Memorijska oblast.
  3. Neobjektno orijentisani elementi jezika 'C++'.
  4. Klase u jeziku 'C++'. Konstruktori (preklapanje, konstruktor kopije, move konstruktor) i destruktori, članovi klase, zajednički članovi klase, prijatelji klase.
  5. Pokazivai na članove klase.Nizovi i pokazivači.
  6. Operatorske funkcije i preklapanje.
  7. Nasleđivanje. Javno, privatno, zaštićeno.
  8. Višestruko izvođenje. Izvedene klase i konverzije.
  9. Konstruktori i destruktori izvedenih klasa. Virtuelni destruktori. Virtuelne klase.
  10. Generičke funkcije i klase.
  11. Izuzeci.
  12. Standardna biblioteka klasa.
  13. Niti.
  14. Ulaz/izlaz.
  15. Lambda.
Praktična nastava:
  1. Praktična nastava prati program predavanja rešavanjem zadataka u računarskoj laboratoriji.
Literatura
  1. L. Kraus (2011): Programski jezik C++ sa rešenim zadacima, osmo izdanje. Akademska misao, Beograd.
  2. B. Stroustrup (1997): The C++ Programming Language.
  3. B. Eckel (2000): Thinking in C++, Planet PDF.
Broj časova aktivne nastave (nedeljno)
Predavanja: 2
Vežbe: 3
Drugi oblici nastave: 0
Ocena znanja (maksimalan broj poena 100)
Predispitne obaveze
Poeni
aktivnosti u toku predavanja
0
aktivnosti na laboratorijskim vežbama
10
seminarski rad
0
kolokvijum
60
Završni ispit
Poeni
Pismeni ispit
30
Usmeni ispit
0