Difference between revisions of "Effective Analysis Programming 2"
From Gridkaschool
(→Review code of a project) |
|||
(One intermediate revision by the same user not shown) | |||
Line 23: | Line 23: | ||
==Exercises== |
==Exercises== |
||
+ | |||
+ | ===Review code of a project=== |
||
+ | * Start with tar ball [[File:Inertia.tgz]] |
||
+ | * Add missing code to Cylinder class |
||
+ | * test it |
||
+ | * check into the repository |
||
+ | * tag it with CVS |
||
+ | * improve the code using the guidelines |
||
+ | * commit changes tag new version |
||
+ | |||
+ | ===Debugging=== |
||
+ | |||
+ | ===Profiling=== |
Latest revision as of 09:38, 29 August 2012
We give an introduction to advanced topics of C++. These include inheritance, templates, stable numerical calculations, debugging and profiling. The main focus is on rules and guidelines to write clear code and avoid common pitfalls.
Desirable Prerequisite: Basic knowledge of C/C++
Contents
Books
- Stroustrup: "The C++ Programming Language", 3rd edition
- Sutter, Alexandrescu: "C++ Coding Standards"
- Press et al.: "Numerical Recipes", 3rd edition
- Meyers: "Effective C++" etc.
Nodes
- gks-044.scc.kit.edu 141.52.174.44
- gks-246.scc.kit.edu 141.52.174.246
Lectures
- Coding Guidelines 1(Organization and policy, Design style, Coding style, Function) Media:Effprog2.pdf
- Coding Guidelines 2(Organization and policy, Design style, Coding style, Function) Media:Effprog3.pdf
Exercises
Review code of a project
- Start with tar ball File:Inertia.tgz
- Add missing code to Cylinder class
- test it
- check into the repository
- tag it with CVS
- improve the code using the guidelines
- commit changes tag new version