Subject: Programming
Course: Object oriented and visual programming
ECTS credits: 5
Language: Croatian/ English/ French
Duration: 1 semester
Status: compulsory for single major students
Method of teaching: 1 lecture hour – 1 hour of seminar - 2 hours of practical classes
Prerequisite: Algorithms and Data Structures
Assessment: Written and oral exam

Course description:
Data abstraction. Abstract types. Classes (basic and derived). Objects. Operators and operands. Objects and messages. Constructors and destructors. Initialization and assignment. Basic operations. Function overload. Polymorphism. Dynamical linking. Parameter types. Inheritance (multiple and repeated). Encapsulation. Active and passive processes. Memory dump.
Practical classes closely follow the lectures. Examples are shown using chosen OO and visual programming language (Delphi or Visual Basic). All students are expected to write a written report.

Course objectives:
Introduce the theory and practice of object oriented and visual programming to students. Practical work using an object oriented programming language will allow students to become familiar with the techniques of such programming.

Quality check and success of the course: Quality check and success of the course will be done by combining internal and external evaluation. Internal evaluation will be done by teachers and students using survey method at the end of semester. The external evaluation will be done by colleagues attending the course, by monitoring and assessment of the course.

Reading list:
1. DOVEDAN, Zdravko; VUČKOVIĆ, Kristina: Objektno programiranje, lekcije, FF Zagreb 2005.

Additional reading list:
1. DOVEDAN, Zdravko; SMILEVSKI, Mirko; STAMENKOVIĆ, Milan: PASCAL i programiranje, ZOTKS,  Ljubljana, 1989.
2. DOVEDAN, Zdravko: Pascal i programiranje (1), Zagreb, don, 1995.