Object oriented programming
Course: Applied Mathematics
Structural unit: Faculty of Computer Science and Cybernetics
Title
Object oriented programming
Code
ОК.26
Module type
Обов’язкова дисципліна для ОП
Educational cycle
First
Year of study when the component is delivered
2023/2024
Semester/trimester when the component is delivered
3 Semester
Number of ECTS credits allocated
8
Learning outcomes
LO 18. Efficiently communicate with the supply of information, ideas, problems and solutions with specialists and support
Form of study
Full-time form
Prerequisites and co-requisites
To successfully learn the discipline “Object oriented programming” the student should satisfy the following requirements.
They have successfully passed the courses “Programming”.
They know (a) fundamentals of basic data structures and algorithms to work with them.
They can (a) project, develop, and test .
They should be able to (a) develop programs in C and C++.
Course content
Block 1. Generic programming.
Template functions
Template classes
Polymorph properties of templates
Exceptions
Traits and policies
Expression templates
Metaprogramming
Hierarchies of templates and their using
Type classification
Smart pointers
Test work
Block 2. C++ Standard library
Structure of Standard Template Library
Containers
Algorithms
Functors
Stabdard utilities.
Standard arrays. Class vector.
Standard lists. Class list.
Standard sets and multisets. Classes set and multiset.
Standard maps and multimaps. Класes map and multimap.
Iterators and adapters.
Standard smart pointers. Classes shared_ptr and weak_ptr
Standard smart pointers. Class unique_ptr_ptr
Standard strings
Unordered associative containers. Hashing
Work with numbers. Class array.
Work with numbers. Class valarray.
Work with numbers. Class bitset.
Evolution of С++.
Test work
Recommended or required reading and other learning resources/tools
1. Dzhosattis N.M. Standartnaia biblioteka S++: spravochnoe rukovodstvo. M.: Izdatel-skii dom “Vil-iams”, 2014
2. Vandervurd D., Dzhosattis N. Shablony S++: spravochnik razrabotchika. — M.: Izdatel-skii dom “Vil-iams”, 2003. — 544 s.
3. Kliushin D.A. Polnyi kurs S++. Professional-naia rabota. — M.: Izdatel-skii dom “Vil-iams”, 2004.
4. Knut D. Iskusstvo programmirovaniia. T. 1-3. — 3-e izd. — M.: Izdatel-skii dom “Vil-iams”, 2000.
5. Kormen T., Leizerson Ch., Rivest R., Shtain K. Algoritmy: postroenie i analiz. – – M.: Izdatel-skii dom “Vil-iams”, 2006.
6. Straustrup B. Iazyk programmirovaniia S++. Spetsial-noe izdanie. — Spb: Nevskii dialekt, 2002.
7. Gamma E., Khelm R., Dzhonson R., Vlissides Dzh. Priemy obieektno-orientirovannogo proektirovaniia. — Spb.: Piter, 2004.
8. Laslo M. Vychislitel-naia geometriia i komp-iuternaia grafika na S++: Per. s angl. M., "BINOM", 1997.
..
Planned learning activities and teaching methods
Lectures, лабораторні роботи, independent work, recommended literature processing, homework.
Assessment methods and criteria
Intermediate assessment:
The maximal number of available points is 70.
Test work no. 1: RN 1.1, RN 1.2, RN 1.3 – 35/18 points.
Test work no. 2: RN 1.1, RN 1.2 – 35/18 points.
Final assessment (in the form of exam):
The maximal number of available points is 40.
The results of study to be assessed are RN 1.1, RN 1.2, RN 2.1, and RN 3.1.
The form of exam: writing.
The types of assignments are 4 writing assignments (2 theoretical and 2 practical).
Language of instruction
Ukrainian
Lecturers
This discipline is taught by the following teachers
Departments
The following departments are involved in teaching the above discipline