Opće informacije
Naziv predmeta Objektno-orijentirano programiranje
Studijski program Preddiplomski stručni studij Računarstva
Status predmeta Obvezatan
Godina 1. (2. semestar)
Bodovna vrijednost i način izvođenja nastave ECTS 9
Sati (P+V+S) 15+45+0
Opis predmeta

Ciljevi predmeta

Upoznati studenta s konceptom klasa i objekata. Skrenuti pažnju studentima na intelektualni proces apstrakcije, kojim se zanemaruju irelevantna svojstva stvarnih objekata, kako bi mogli biti opisani kroz računalne objekte.
Student mora moći kreirati klasu u programskom jeziku C++ odnosno C# koja na adekvatan način opisuje objekt iz stvarnog svijeta. Kreirati i kompleksniji model, pri čemu studentu treba pokazati osnovne koncepte objektnoorijentiranog programiranja: ugnježđivanje, nasljeđivanje i polimorfizam. U konačnici student mora moći samostalno kreirati jednostavan OO model neke pojave iz stvarnog svijeta.
Naznačiti studentu i objektno –orijentirane aspekte PHP-a s kojima će se susretati kasnije tijekom studija.

Očekivani ishodi učenja

  • Koristiti programski alat MS Visual Studio za kreiranje projekata u programskim jezicima C++ i C#
  • Identificirati neka bitna svojstva objekta iz stvarnog svijeta
  • Kreirati klasu u C# i/ili C++ koja će biti računalna prezentacija objekta iz realnog svijeta
  • Definirati plan nasljeđivanja klasa poštivajući odnose iz realnog svijeta
  • Izraditi aplikaciju koja koristi objekt određene klase radi rješavanja stvarnog problema.
  • Testirati aplikaciju s posebnim naglaskom na komunikaciju odnosno razmjenu podataka između objekata

Sadržaj

Paradigma programiranja općenito. Specifičnosti objektno-orijentiranog programiranja. Osnovni pojmovi objektno-orijentiranog programiranja: objekt, klasa, metoda, pravo pristupa, ugnježđivanje, nasljeđivanje, polimorfizam, podatkovni i funkcijski član klase. Programski jezici C++ i C# – OO svojstva i specifičnosti, karakteristike i osnove sintakse. Komparacija osnovnih elemenata sintakse. Konstruktori i destruktori. Apstraktne klase. Pretvorba između osnovne i izvedene klase. Redefiniranje funkcija u izvedenim klasama. Aplikativna programska sučelja. Objektno-orijentirani elementi PHP.