next up previous
Next: Grading Up: Advanced C++ Programming Previous: Instructor and Venue

Course Outline

We talk about the C++ programming language, which has become an industry standard for application programming (system programming is not that far off, the standard here being C++'s cousin C). Since we are at it, we shall also talk about programming style and good programming practices.

To make learning C++ fun (and more useful), all but the most trivial programming done throughout the course will actually make some sense in other respects than merely helping you to learn the language. Specifically, we shall consider implementations of algorithms (such as sorting, parsing, compression) and data structures (stacks, queues, trees, graphs, etc.) that are common place in practice.

Time permitting, we shall also discuss abstract data types (together with their implementation) and more advanced algorithms, though these will mostly be delegated to the assignments.

We thus base the course on the following rough (i.e., subject to change) outline. Note that this outline is not necessarily in chronological order; for instance, the programming process shall be discussed as soon as you have enough base knowledge to be able to understand it.

Introduction, rules of the game, etc 1 week
Elementary C++ programming 2 weeks
Arrays, pointers, and structures 3 weeks
The programming process (specification, testing, debugging, maintenance) 1 week
Advanced types, classes 2 weeks
The C++ preprocessor 1 week
Advanced classes, templates 2 weeks
Advanced topics 1 week


next up previous
Next: Grading Up: Advanced C++ Programming Previous: Instructor and Venue
Stefan Bruda 2013-01-07