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

Учебна програма, график за лекциите, учебни материали [2024/2025]


Лекции
Дата

1

Наследяване и полиморфизъм
Базови и производни класове. Извикване на конструктор на базов клас и на член-функции на базов клас.   Полиморфизъм
Chapter 11.
Inheritance
Base and Derived Classes, Calling the Base-Class Constructor, Calling Base-Class Member Function,  Polymorphism



2
Потоци I
Четене и писане на текстови файлове. Йерархия на потоковите класове. Абстрактни класове.
Chapter 12.
Streams I
Reading and Writing Text Files, The Inheritance Hierarchy of Stream Classes
Big: 19.2 Abstract Classes


3
Потоци II
Низови потоци. Аргументи от командния ред. Пряк достъп.
Chapter 12.
Streams II
String Streams,  Command Line Arguments, Random Access
(Задачи за упражнениея - лекции)


4

Рекурсия
Триъгълни числа. Пермутации. Ефективност на рекурсията. Непряка (взаимна) рекурсия.
Chapter 14.
Recursion
Triangle Numbers, Permutations, Thinking Recursively, The Efficiency of Recursion, Mutual Recursion



5
Тест 1


6
Сортиране и търсене
Сортиране чрез селекция и а нализ на алгоритъма. Сортиране чрез сливане и анализ на алгоритъма. Линейно и двоично търсене.
Chapter 15.
Sorting and Searching
Selection Sort, Profiling and Analyzing the Performance of the Selection Sort Algorithm, Merge Sort, Analyzing the Merge Sort Algorithm, Searching, Binary Search


7
Въведение в структури от данни
Свързани списъци. Свързан списък, стек и опашка в Стандартната библиотека шаблони (STL). Други STL контейнери. Алгоритми.
Chapter 16.
An Introduction to Data Structures I
Linked Lists, Stacks and Queue, Other Standard Containers, Algorithms


8
Реализация на свързани списъци
Реализация на свързани списъци.
Chapter 16.
An Introduction to Data Structures II
Implementing Linked Lists


9 Предефиниране на операции
Предефиниране на операции.
Chapter 17.
Advanced C++ Topics I
Operator Overloading, Automatic Memory Management
(Задачи за упражнениe  - лекции)


10
Тест 2


11
Управление на паметта
Автоматично управление на паметта.
Chapter 17.
Advanced C++ Topics I
Automatic Memory Management
(Задачи за упражнение - лекции)


12
Шаблони и вложени класове
Шаблони. Вложени класове.
Chapter 17.
Advanced C++ Topics II
Templates, Nested Classes
(Задачи за упражнение - лекции)


13
Обработка на изключения
Обработка на изключения.
Chapter 17.
Advanced C++ Topics III
Exception Handling
(Задачи за упражнение - лекции)


14
Йерархии на наследственост
Получаване на информация по време на изпълнение. Многократна наследственост.
Big: 19. Class Hierarchies


15 Тест 3



Поправка на един от тестовете: 1, 2  или 3
Четвърти тест && Устен изпит