Обектно ориентирано програмиране: C++

Анотация

Обектно ориентирано програмиране е основен курс за студентите II и IV курс (трети и седми семестър) от специалност Информатика за 2000/2001 уч. година. Основна цел на курса е да се овладеят принципите на обектно-ориентираното програмиране, като се използва езикът С++.

В начлото на курса се припомнят основни въпроси, свързани с дефиниране и използване на прости класове - капсулиране на данни, функции-членове, конструктор и деструктор, обекти константи и константни членове на клас, композиция и обекти като параметри на функции. Въвеждат се и понятията приятелски функции и приятелски класове, указател this, статични членове на клас.

Предефиниране на операции е основна техника в обектно-ориентираното програмиране. Предефинирането на унарни и бинарни операции се илюстрира със създавене на клас Array. Подробно се изучават и въпросите от наследяване на класове, виртуални функции и полиморфизъм. Входни и изходни потоци за класове и обекти, потокови манипулатори, състояние на потоците, потоци и работа с файлове са част от темите, свързани с входно-изходните операции в C++. Разглеждат се принципите и методите за обработка на изключения: докладване, прихващане, пренасочване на обработката, наследственост и изключения. Накрая се изучават и някои класове за структури от данни.

Придобитите знания се използват и от други курсове по информатика, програмиране и бази данни.

Студентите трябва да се слушали курсовете: Въведение в програмирането и Програмиране и структури от данни.

Курсът следва учебника на Deitel&Deitel [7].


Литература

1. Димитър Богданов. Обектно ориентирано програмиране, Техника, 1998.
2. Стенли Липман. Езикът С++ в примери, Колхида Тренд КООП, 1993.
3. Брайън Овърленд, C++ на разбираем език, ИК "Алекс софт", 1999.
4. Грег Пери. С++ програмиране в 101 примера, Paraflow & Prentice Hall Int., София, 1994.
5. Тед Фейсон. Borland C++. Обектно-ориентирано програмиране, Втора част, Нисофт ООД и Macmillan Computer Publishing, София, 1995.
6. Кай Хорстман, Принципи на програмирането със С++, ИК Софтех, София, 2000.
7. H.M.Deitel, P.J.Deitel, C++ How to Program, Prentice Hall, 1994.
8. Nell Dale, Chip Weems, Mark Headington. Programming and Problem Solving with C++, Jones and Bartlett Publ., 2nd edition, 1997.
9. Nell Dale, Chip Weems, Mark Headington. Programming in C++, Jones and Bartlett Publ., 1998.
10. Richard Wiener, An Introduction to Object-oriented programming and C++, Addison-Wesley, 1988.

Допълнителна литература

11. Timothy A Budd, Classic Data Structures in C++, Addison Wesley Longman, 1994.
12. Bjarne Stroustrup, The C++ Programming Language (2nd edition), Addison-Wesley, Reading, MA. 1991.