Course title | Advanced Programming in C |
---|---|
Course code | UAI/771 |
Organizational form of instruction | Lecture + Lesson |
Level of course | Bachelor |
Year of study | not specified |
Frequency of the course | In each academic year, in the summer semester. |
Semester | Summer |
Number of ECTS credits | 6 |
Language of instruction | Czech |
Status of course | Optional |
Form of instruction | unspecified |
Work placements | unspecified |
Recommended optional programme components | None |
Lecturer(s) |
---|
|
Course content |
1) Pointers & references, pointers to functions, smart pointers, move semantics, RAII 2) Classes, inheritance, friendship, polymorphism, operators overloading, PIMP Idioma 3) Streams in C++, file access with streams, objects serialization 4) Templates, genericity, functors, iterators, meta-programming, traits 5) Advanced constructions in C++, lambda functions, variadic templates and functions, partial specialization, automatically deduced types 6) STL - containers, iterations, pairs, emplace semantics 7) STL - algorithms, types and their using 8) Modularity, namespaces, dynamic type control, own data types, politics, assert 9) Parallel programming in C++, threads 10) Dynamic-link libraries (DLL) 11) Network communication in C++, BSD sockets, TCP channel, message sending 12) GUI - introduction, properties and events in C++, QT library
|
Learning activities and teaching methods |
Monologic (reading, lecture, briefing)
|
Learning outcomes |
The course is designed for students knowledgeable in object-oriented programming to make it familiar with the specifics of the programming language C ++. The emphases is put on the latest standards C++ 14/17/20.
The student is able to create source code on the basis of the class model created after having analysed the task. An emphasis is put to the creation of optimal structure of the program, suitable for application and long-term maintenance. Final lectures and tasks are designed for proper tests of application administration both local and remote. |
Prerequisites |
The knowledge comparable to the subject of Procedural programming in C/C++
UAI/685 ----- or ----- UAI/685U ----- or ----- UAI/735 ----- or ----- UAI/735K |
Assessment methods and criteria |
Written examination
Elaboration of semester work and active participation in seminars. |
Recommended literature |
|
Study plans that include the course |
Faculty | Study plan (Version) | Category of Branch/Specialization | Recommended semester | |
---|---|---|---|---|
Faculty: Faculty of Science | Study plan (Version): Applied Informatics (1) | Category: Informatics courses | - | Recommended year of study:-, Recommended semester: Summer |
Faculty: Faculty of Science | Study plan (Version): Applied Informatics (1) | Category: Informatics courses | - | Recommended year of study:-, Recommended semester: Summer |
Faculty: Faculty of Science | Study plan (Version): Applied Informatics (1) | Category: Informatics courses | - | Recommended year of study:-, Recommended semester: Summer |
Faculty: Faculty of Science | Study plan (Version): Applied Informatics (1) | Category: Informatics courses | - | Recommended year of study:-, Recommended semester: Summer |