描述
Aplikacija "Programski jezik C++" predstavlja digitalni kurs sa video-materijalima i primjerima koda koji ilustruju način funkcionisanja programskog jezika C++. Namjena ovog digitalnog kursa je savladavanje programskog jezika C++ i osnovnih principa objektno-orijentisanog programiranja. Nakon usvajanja materijala prezentovanih u kursu "Programski jezik C++", student je osposobljen da implementira kompleksna rješenja korištenjem programskog jezika C++, te da raspolaže znanjima neophodnim za upotrebu standardne biblioteke ovog jezika uz pridržavanje konvencija specifičnih za ovaj jezik. Student razumije objektno-orijentisanu paradigmu i ispravno primjenjuje principe objektno-orijentisanog programiranja, uključujući enkapsulaciju, skrivanje informacija, te upotrebljava mehanizam polimorfizma i pridržava se osnovnih principa programiranja, sa ciljem maksimiziranja čitljivosti i eliminacije dupliranja koda. Kurs se sastoji od video-materijala u kojima se izlaže relevantna teorijska osnova. Svako poglavlje kursa sadrži video-materijal sa teorijskim izlaganjem i obrazloženjem praktičnog primjera. Uz video-materijale, u svakom poglavlju dostupni su primjeri koda koji ilustruju principe iznesene u teoretskom izlaganju. Svako poglavlje, pored ovih materijala, sadrži i veze ka eksternim web prezentacijama koje obrađuju tematiku poglavlja, kao dodatnu literaturu.
Ovaj kurs podrazumijeva poznavanje programskog jezika C i proceduralne programske paradigme, kao i osnovno poznavanje upotrebe razvojnog okruženja za rad sa programskim jezicima C i C++. Kurs je osmišljen tako da se individualne teme međusobno nadovezuju, te se priloženi primjeri programskog koda tako usložnjavaju sa napredovanjem kroz poglavlja kursa.
Kurs obrađuje sljedeće teme: • Uvod u programski jezik C++ – Pregled jezičkih dodataka u odnosu na programski jezik C • Enkapsulacija i skrivanje informacija – Osnovni principi objektno-orijentisanog programiranja • Objekti i instanciranje objekata – Sintaksa i mehanizmi rada sa objektnim modelom • Operatori i preklapanje operatora – Definisanje operatora i operatorskih funkcija; lambda operator i zahvatanje (dohvatanje) iz opsega • Nasljeđivanje i inkluzivni polimorfizam – Implementacija inkluzivnog polimorfizma u programskom jeziku C++ • Izuzeci i propagacija izuzetaka – Mehanizam obrade izuzetaka, podizanje izuzetaka, razmotavanje steka • Generički mehanizam – Implementacija parametarskog polimorfizma u programskom jeziku C++ • Standardna biblioteka – Osnovne kolekcije i funkcije standardne biblioteke programskog jezika C++