19E112OOP - Object-Oriented Programming

Course specification
Course title Object-Oriented Programming
Acronym 19E112OOP
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 elective
Condition Programming 1, Programming 2
The goal Introduce students to the fundamental concepts of the object-oriented paradigm. Prepare students to design and implement programs using object-oriented programming languages. Learn the C++ programming language. Introduce students to the basic concepts and ideas of object-oriented modeling in UML and design patterns
The outcome Ability to understand the semantics of code written in C++. Ability to solve programming tasks (coding) according to the requirements using object concepts and the C++ programming language. Ability to independently design parts of less complex object software.
URL to the subject page
Contents of lectures Basic concepts of OO paradigm. Classes and objects. Attributes and operations. Encapsulation. Inheritance. Polymorphism. Introduction to C++. General design principles. Introductory example. General elements of C++. Procedural elements of C++. Classes. Operator overloading. Derived classes and polymorphism. Introduction to OO modeling in UML. Introduction to design patterns.
Contents of exercises The same as for the theoretical contents.
  1. D. Milićev, "Objektno orijentisano programiranje na jeziku C++, Skripta sa praktikumom", Mikro knjiga, Beograd, 2001. (Original title)
  2. D. Milićev, "Objektno orijentisano modelovanje na jeziku UML, Skripta sa praktikumom", Mikro knjiga, Beograd, 2001. (Original title)
  3. D. Milićev, "Objektno orijentisano programiranje na jeziku C++ ", Mikro knjiga, Beograd, 1995. (Original title)
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 (30 hours), supervised problem classes (30 hours). Individual project: design and implementation of a specified software system in C++. Requires approximately 60 hours of individual study and practice, and 60 hours of individual practical work on the project (including programming).
Knowledge score (maximum points 100)
Pre obligations Points Final exam Points
Activites during lectures 0 Test paper 50
Practical lessons 30 Oral examination 0
Projects 20
Colloquia 0
Seminars 0