Bachelor
2025/2026





C++ Programming Language
Type:
Compulsory course (Data Science and Business Analytics)
Delivered by:
Big Data and Information Retrieval School
Where:
Faculty of Computer Science
When:
1 year, 1-3 module
Open to:
students of one campus
Language:
English
ECTS credits:
6
Contact hours:
172
Course Syllabus
Abstract
The course is intended to be taught during the second semester of the program. It is dedicated to the base features of the C++ programming language and C++ Standard Library (STL). The part covers all necessary topics that are needed to start developing a modern CLI1-applications in C++. The lectures and practical classes are closely inter-related. The lectures are primarily intended to introduce new topics, whereas the practical classes are intended for solving specific problems by coding programs in C++.
Learning Objectives
- One of the objectives of this course is for the students to will study the methodology of programming.
- During this course, the students will develop algorithmic thinking.
- During this course, the students will study approaches and toolchains for the development of C++-applications.
- During this course, the students will practice application debugging and deployment with respect to various platforms and toolchains.
Expected Learning Outcomes
- Students will learn basic concepts and methods of software development.
- Students will learn to analyze a problem to be implemented in the form of a C++-application.
- Students will learn to create a testbed environment for essential testing of the application.
- Students will learn to design app architecture with respect to problem decomposition and known limitations.
- Students will learn to select the most appropriate toolset for app development.
Course Contents
- Introduction to C++.
- Data types and Objects.
- Control flow statements.
- Expressions and Operators.
- Functions and procedures.
- C++ Memory model.
- Classes.
- Strings.
- Standard library (STL).
- Operator overloading.
- Templates.
- Exceptions and Move semantics.
- Inheritance.
Assessment Elements
- CTclass test
- HWyandex.contest programming tasks
- Colloquim
- Activity on seminars
- Project
- CWControl work in class
- Exam module 1Test from the theoretical part + tasks in Yandex contest, 2 hours.
- Exam module 3Test from the theoretical part + tasks in Yandex contest, 2 hours.
Interim Assessment
- 2025/2026 1st moduleGrade_Module1 = 0.25*min(CT;HW) + 0.25*CW + 0,4*colloquium1(EXAM) + 0.1*activity
- 2025/2026 3rd moduleFinal_Grade = 0.2*min(CT; HW; activity) + 0.25*min(colloquium1, colloquium2) + 0.2*CW + 0.2*exam + 0.15*project
Bibliography
Recommended Core Bibliography
- Davis, S. R. (2014). C++ For Dummies (Vol. 7th ed). Hoboken: For Dummies. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=784132
- Gregoire, M. (2018). Professional C++ (Vol. Fourth edition). Indianapolis, IN: Wrox. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1729638
Recommended Additional Bibliography
- Olsson, M. (2015). C Quick Syntax Reference. [New York]: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=944034