Friedrich-Alexander-Universität UnivisDeutsch FAU-Logo
Techn. Fakultät Willkommen am Institut für Informatik FAU-Logo
Logo LSS
Chair for System Simulation (Department of Computer Science 10)
Advanced Programming Techniques
Main page
Lecturer
Tutor
email
Lecture
Exercise
Exam
Literature
Contents
Assignments
Project
Dept. of Computer Science  >  Computer Science 10  >  Teaching  >  Courses  >  WS 2012  >  Advanced Programming Techniques

Advanced Programming Techniques

Lecturers

Harald Köstler
Klaus Iglberger
Markus Stürmer

eMail

harald.koestler@informatik.uni-erlangen.de
klaus.iglberger@informatik.uni-erlangen.de
markus.stuermer@informatik.uni-erlangen.de

Exam

Thursday, 28.2.1013, 10:00 - 11:00 (H9)
2013-03-11: Correction is finally complete. If you agreed, you can find your grade on the notice board of our chair (opposite to computer lab 00.131). Inspection of exams is possible on March 26th at 14.00h in room 00.133!

Lecture

Tuesday, 16:00 - 17:30, H16
Friday, 08:30 - 10:00, H5
2013-02-08: Wrap-up and comments on exam

Exercise

Monday, 16:00 - 17:30, 01.155-113
Thursday, 08:30 - 10:00, 01.155-113

The day and time of the second exercise class is fixed: Thursday, 8:30 - 10:00. Please note that the second exercise class is also in room 01.155-113!!

Contents

Introduction to C++ and the standard library
Object Oriented Concepts
Generic Programming, Containers and ALgorithms, Advanced C++ Features
Coding Standards and Design Patterns

Literature

Lippman et al
C++ Primer. Addison-Wesley
Stroustrup, Bjarne
Programming: Principles and Practice Using C++. Addison-Wesley
Stroustrup, Bjarne
The C++ Programming Language. Addison-Wesley
Sutter, Herb and Alexandrescu, Andrei
C++ coding standards. Addison-Wesley
Herold, Klar
C++, UML and design patterns. Addison-Wesley
...

C++ References

The Apache Software Foundation
C++ Reference
The C++ Resources Network
...

Slides

Introduction to C++: Lecture 1
Introduction to C++ (Types): Lecture 2
Introduction to C++ (IO Library, vector, string, arrays): Lecture 3
Introduction to C++ (Expressions): Lecture 4
Introduction to C++ (Statements): Lecture 5
Introduction to C++ (Functions): Lecture 6
Introduction to C++ (Classes): Lecture 7
Introduction to the standard library (IO library): Lecture 8
Introduction to the standard library (Sequential containers): Lecture 9
Introduction to the standard library (Generic Algorithms): Lecture 10
Introduction to the standard library (Associative Containers): Lecture 11
Introduction to the standard library (Dynamic Memory): Lecture 12
Object Oriented Concepts (Copy Control): Lecture 13
Object Oriented Concepts (Operator Overloading): Lecture 14
Object Oriented Concepts (Inheritance and dynamic polymorphism): Lecture 15
Generic Programming (Templates): Lecture 16
Advanced C++ Features (Exceptions): Lecture 17
Advanced C++ Features (Function objects, namespaces): Lecture 18
Advanced C++ Features (Multiple and Virtual Inheritance): Lecture 19
Advanced C++ Features (tuples, regular expressions, random numbers, type traits): Lecture 20
Parallel Programming Concepts (Threads): Lecture 21
Object Oriented Software Design(Design Patterns I): Lecture 22
Object Oriented Software Design(Design Patterns II): Lecture 23
Object Oriented Software Design(Coding standards I): Lecture 24
Object Oriented Software Design(Coding standards II): Lecture 25
Object Oriented Software Design(Expression Templates): Lecture 26

Code Examples from C++ Primer

Visual Studio Examples new Primer, GCC examples new Primer, Chapter 5, Chapter 6, Chapter 7
Chapter 8, Chapter 9, Chapter 10, Chapter 11, Chapter 12
Chapter 13, Chapter 14, Chapter 15, Chapter 16, Chapter 17
Chapter 18 Coding standard examples Expression Templates Design Patterns
...

Assignments

ex01.pdf, ex01.zip, ex01_solution, ex01_solution.zip
ex02.pdf, ex02.zip, ex02_solution.pdf (update 2013-02-26), ex02_solution.zip
ex03.pdf, ex03.zip, ex03_solution.pdf (update 2013-02-26), ex03_solution.zip
ex04.pdf, ex04.zip, ex04_solution.pdf, ex04_solution.zip
ex05.pdf, ex05.zip, ex05_solution.pdf, ex05_solution.zip
exproject.zip (update 2013-01-17 2013-01-30, please also see the project page), exproject_solution.zip

Tutorials

First steps: Compiling a C++ program and Makefiles
Valgrind
Debugging under Unix: the GDB
  Contact Last modified: 2013-03-11 19:02   ms