Bachelor
2023/2024
C++ Programming Language
Type:
Compulsory course (Data Science and Business Analytics)
Area of studies:
Applied Mathematics and Information Science
Delivered by:
Big Data and Information Retrieval School
Where:
Faculty of Computer Science
When:
1 year, 3, 4 module
Mode of studies:
offline
Open to:
students of one campus
Instructors:
Притула Наталия Евгеньевна,
Рудаков Кирилл Александрович,
Maria Gordenko,
Ivan Kopylov,
Sergey Shershakov
Language:
English
ECTS credits:
6
Contact hours:
120
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
- 1st semester Ongoing Assessment 0.6
- 2nd semester Ongoing Assessment 0.6
- 2nd semester Exam
- Regular tests
- Individual Home tasks
Interim Assessment
- 2023/2024 4th moduleFinal grade = 0.7 *min(1st semester grade, 2nd semester grade) + 0.3 *max(1st semester grade, 2nd semester grade)
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