P2: Programming 2 (FS12)
Overview
Vorlesung für Haupt- und Nebenfachstudenten.
Course: | S6064 (Spring Semester 2012) |
Lecturer: | Prof. Oscar Nierstrasz |
Staff: | Niko Schwarz, Aaron Karper, Joel Krebs |
Lectures: | Fridays 14h15 - 16h00 |
Language: | English (German on demand) |
Location: | Engehaldenstrasse 8, 001 |
Start: | 2012-02-24 |
Exam: | 2012-06-08 @ 10h00-12h00, ExWi A6 |
Exercise hour: | Fridays 16-17 |
Computer pool support: | Tuesdays 15-17, in A95 (Exwi) |
Object-Oriented Programming with Java
This course provides an introduction to object-oriented design, with emphasis on the following themes: How does Responsibility-Driven Design help you to decompose a complex system into objects? How does Design by Contract help you to develop robust software? How do you make use of inheritance to design flexible and generic software systems? How do iterative and incremental development and continuous refactoring help you to arrive at a clean and understandable design? How do you effectively test software? How do you avoid developing complex and unmaintainable code by consistently applying simple design principles? What kinds of known design patterns help you to simplify your software? How do you develop software that communicates its own design? How do you effectively use tools like debuggers, version control systems, and integrated development environments?
Schedule 2012
1 | 24-Feb-12 | Introduction |
2 | 02-Mar-12 | OO Design Principles |
3 | 09-Mar-12 | Design by Contract |
4 | 16-Mar-12 | A Testing Framework |
5 | 23-Mar-12 | Debugging and Tools |
6 | 30-Mar-12 | Iterative Development |
06-Apr-12 | Good Friday | |
13-Apr-12 | Spring break | |
7 | 20-Apr-12 | Inheritance and Refactoring |
8 | 27-Apr-12 | Advanced OO Design (lab, Jorge Ressia) |
9 | 04-May-12 | GUI Construction |
10 | 11-May-12 | Guidelines, Idioms and Patterns |
11 | 18-May-12 | A bit of Smalltalk |
12 | 25-May-12 | A bit of C++ |
13 | 01-Jun-12 | Einblicke in die Praxis (Gastvortrag, Frank Buchli) |
08-Jun-12 | Exam — ExWi A6 @ 10h00-12h00 |