|
|
Module code: KIB-PRG2 |
|
4V+2P (6 hours per week) |
8 |
Semester: 2 |
Mandatory course: yes |
Language of instruction:
German |
Assessment:
Written exam
[updated 19.02.2018]
|
KIB-PRG2 (P222-0030) Computer Science and Communication Systems, Bachelor, ASPO 01.10.2021
, semester 2, mandatory course
KIB-PRG2 (P222-0030) Computer Science and Communication Systems, Bachelor, ASPO 01.10.2022
, semester 2, mandatory course
|
90 class hours (= 67.5 clock hours) over a 15-week period. The total student study time is 240 hours (equivalent to 8 ECTS credits). There are therefore 172.5 hours available for class preparation and follow-up work and exam preparation.
|
Recommended prerequisites (modules):
KIB-PRG1 Programming 1
[updated 25.07.2024]
|
Recommended as prerequisite for:
KIB-PRG3 Programming 3 KIB-SDSA Simulation of Discrete Systems with AnyLogic KIB-SWT Software Engineering KIB-VS Distributed Systems
[updated 25.07.2024]
|
Module coordinator:
Prof. Dr.-Ing. Martin Burger |
Lecturer: Dipl.-Inf. Christopher Olbertz
[updated 25.07.2024]
|
Learning outcomes:
After successfully completing this module, students will: _ be proficient in the basic language elements (data types, expressions, control structures, functions, exception handling) of C++. _ have grasped the concepts of object orientation (classes, objects, inheritance, polymorphism) and be able to implement them. _ have understood the concept of templates and be able to use them in programs. _ be able handle basic classes and algorithms of the C++ standard library (e. g. strings, input/output, container classes, generic algorithms) confidently. _ be able to develop solutions to simple to medium-difficult problems in small teams and implement them in a well-structured manner.
[updated 19.02.2018]
|
Module content:
1. Introduction and motivation 2. Elementary language elements in C++ 3. Introduction to object-oriented programming - General overview - Introduction to classes and objects - Introduction to exception handling 4. Basic concepts - Scopes, type conversions - Functions and references - Using the documentation generator Doxygen 5. Classes and objects (Part 2) - Copy constructor, assignment operator - Class attributes and methods 6. Overloading operators 7. In-output and file processing 8. Inheritance - Basic concepts - Dynamic dispatch - Abstract classes - Multi inheritance 9. Exception handling (Part 2) 10. Templates - Function templates - Class templates 11. Standard template library - Concepts - Containers, algorithms, iterators
[updated 19.02.2018]
|
Teaching methods/Media:
Transparencies, projector
[updated 19.02.2018]
|
Recommended or required reading:
Breymann, Ulrich Der C++ Programmierer. C++ lernen - Professionell anwenden - Lösungen nutzen. Carl Hanser Verlag GmbH & CO. KG Stroustrup, Bjarne Einführung in die Programmierung mit C++ Pearson Studium Grimm, Rainer C++11: Der Leitfaden für Programmierer zum neuen Standard Addison-Wesley, München; Will, Torsten T. C++11 programmieren: 60 Techniken für guten C++11-Code Galileo Computing Eckel, Bruce Thinking in C++ Prentice Hall, http://www.BruceEckel.com Meyers, Scott Effektiv C++ programmieren: 55 Möglichkeiten, Ihre Programme und Entwürfe zu verbessern Addison-Wesley Schäling, Boris The Boost C++ Libraries Xml Press C++ Reference http://www.cppreference.com Bjarne Stroustrup´s C++ Style and Technique FAQ www.stroustrup.com/C++11FAQ.html
[updated 19.02.2018]
|
Module offered in:
SS 2024,
SS 2023,
SS 2022,
SS 2021,
SS 2020,
...
|