13E112OO1 - Object-Oriented Programming 1

Course specification
Course title Object-Oriented Programming 1
Acronym 13E112OO1
Study programme Electrical Engineering and Computing
Type of study bachelor academic studies
Lecturer (for classes)
Lecturer/Associate (for practice)
Lecturer/Associate (for OTC)
ESPB 6.0 Status mandatory
Condition A formal prerequisite does not exist, but it is expected that the student is familiar with the material of the courses "Programming 2" and "Practicum in programming 2".
The goal Understanding and mastering the basic principles of object-oriented programming, like abstraction, encapsulation, inheritance, and polymorphism. Understanding the concepts of exceptions and templates. Acquiring skills of object-oriented programming in the C++ language. Using the Standard Template Library (STL).
The outcome On successful completion of the course, the students will be able to: - interpret and apply the object-oriented programming paradigm; - demonstrate the principles of the object-oriented programming in the C++ programming language; - solve practical programming problems using the C++ language; - use the standard template library (STL).
URL to the subject page
URL to lectures
Contents of lectures Object-oriented concepts in the C++ language overview. Classes and objects. Constructors and destructors. Static members. Friends. Class nesting and local classes. Operator overloading. Derivation and inheritance. Polymorphism and dynamic binding. Abstract classes. Multiple inheritance. Exceptions. Template functions and classes. Standard template library (STL). Input/output streams.
Contents of exercises Auditory practices, laboratory demonstration and laboratory control exercises. Home works.
  1. Kraus, L., "The C++ Programming Language with Solved Problems", 10th edition, Academic Mind, Belgrade, 2016.
  2. Kraus, L., "Solved Problems in the C++ Programming Language", 5th edition, Academic Mind, Belgrade, 2016.
  3. Tartalja, I., "Slides for Lectures on the Subject Object-Oriented Programming 1", 2018.
Number of hours per week during the semester/trimester/year
Lectures Exercises OTC Study and Research Other classes
2 2 1
Methods of teaching Lectures and auditory practices are supplied with electronic presentations. Lectures introduce concepts of OO programming and present definition of the C++ language, while the auditory practices demonstrate practical examples of object-oriented programming in C++. Laboratory exercises are divided into demonstration and control ones.
Knowledge score (maximum points 100)
Pre obligations Points Final exam Points
Activites during lectures 0 Test paper 30
Practical lessons 15 Oral examination 0
Colloquia 55
Seminars 0