Cílem předmětu je naučit studenty, kteří zvládli základy algoritmizace v jazyku C, řešit problémy v jazyku C++ s využitím principů objektově orientovaného programování. Budou probrány veškeré rysy jazyka C++, které tento styl podporují, Studenti by měli umět rozlišit, k čemu jsou vhodné abstraktní třídy a k čemu šablony a jak použít třídu pro realizaci abstraktního datového typu. Budou též seznámeni s principy programů řízených událostmi (koncepce knihovny QT) a s dalšími rysy jazyka C++.