Курсът запознава студентите с базовите елементи на обектно-ориентираното програмиране. Разглежда дефинирането и използването на основните компоненти на класовете (конструктори, деструктори, функции елементи, данни елементи и др.). Съществена част от изложението заема наследяването (единично и множествено). Специално внимание се отделя на динамичното свързване, на дефинирането и използването на виртуални функции, на полиморфизма и на абстрактните класове.
Изложението се базира на езика C++.
По-нататък студентите се запознават с основните концепции, свързани със структурите от данни. Разглежда се описанието и реализацията на различни представяния на структурите от данни: последователен и свързан стек, последователна и свързана опашка, последователен и свързан списък. Всяка от тези структури е реализирана чрез използване на разнообразни средства от езика C++.