Object-oriented programming

Object-oriented programming

1.

Subject title

Object-oriented programming

Објектно-ориентирано програмирање

2.

Code

F23L1S016

3.

Study program

Примена на информациски технологии, Софтверско инженерство и информациски системи, Компјутерски науки, Компјутерско инженерство, Интернет, мрежи и безбедност, Software engineering and information systems, Примена на информациски технологии, Софтверско инженерство и информациски системи, Компјутерски науки, Компјутерско инженерство, Интернет, мрежи и безбедност, Информатичка едукација, Software engineering and information systems, Стручни студии за програмирање, Стручни студии за програмирање,

4.

Organizer of the study program (unit, institute, department, division)

Faculty of Information Sciences and Computer Engineering

5.

Study cycle (first, second, third)

Прв циклус

6.

Academic year / semester

1 / Летен

7. Number of ECTS credits

6.0

8.

Instructor

проф. д-р Ана Мадевска Богданова ворн. проф. д-р Бобан Јоксимоски проф. д-р Дејан Ѓорѓевиќ доц. д-р Емил Станков проф. д-р Ѓорѓи Маџаров ворн. проф. д-р Христина Михајлоска Трпческа проф. д-р Иван Чорбев проф. д-р Ивица Димитровски ворн. проф. д-р Катарина Тројачанец Динева проф. д-р Невена Ацковска

9.

Prerequisites for enrollment

10.

Subject goals and competencies:


The aim of the course is to familiarize the student with the basic concepts of object-oriented programming. For this purpose, the concepts of objects and classes, encapsulation, inheritance and polymorphism will be introduced. Students will also be introduced to the hierarchy of classes. Comparisons will be made of implementations of object-oriented concepts in different programming languages. After completing the course, the student will understand the principles of object-oriented programming and will be able to develop programs that support these principles.

11.

Subject content:


1. Introduction (course), introduction to CSR (structures) 2. Classes and objects, life cycle of an object 3. Classes, objects and access levels 4. Copying objects, this 5. Operators 6. Inheritance 7. Polymorphism 8. Abstract classes 9. Advanced inheritance techniques 10. Exceptions 11. Templates

12.

Learning methods:


Предавања со користење на презентации, интерактивни предавања, вежби (користење на опрема и софтверски пакети), тимска работа, пример случаи, поканети гости предавачи, самостојна изработка и одбрана на проектна задача и семинарска работа.

13.

Total available time fund

6.0 ECTS x 30 hours = 180 hours

14.

Time distribution

30 + 45 + 15 + 15 + 75 = 180 hours

15.

Forms of teaching activities

15.1.

Lectures - theoretical teaching

30 hours

15.2.

Exercises (laboratory, classroom), seminars, team work

45 hours

16.

Other forms of activities

16.1.

Project tasks

15 hours

16.2.

Independent tasks

15 hours

16.3.

Homework

75 hours

17.

Grading method

17.1.

Tests

10 points

17.2.

Seminar work / project (presentation: written and oral)

15 points

17.3.

Activities and learning

10 points

17.4.

Final exam

70 points

18.

Grading criteria (points / grade)

up to 50 points

5 (five) (F)

from 51 to 60 points

6 (six) (E)

from 61 to 70 points

7 (seven) (D)

from 71 to 80 points

8 (eight) (C)

from 81 to 90 points

9 (nine) (B)

from 91 to 100 points

10 (ten) (A)

19.

Condition for signature and taking final exam

Реализирани актибвности 15.2 и 16.1

20.

Language of instruction

Македонски и англиски

21.

Quality assurance method

механизам на интерна евалуација и анкети

22.

Literature

22.1.

Mandatory literature

No.

Author

Title

Publisher

Year

4557

Tony Gaddis, Judy Walters, Godfrey Muganda

Starting Out with C++: Early Objects, 10th Edition

Pearson

2019

4558

Bjarne Stroustrup

Programming: Principles and Practice Using C++

Addison Wesley

2014

4559

Bjarne Stroustrup

The C++ Programming Language

Addison Wesley

2013

22.2.

Additional literature

No.

Author

Title

Publisher

Year