[an error occurred while processing this directive]
 

Introduction to Programming

German version of this page

Bertrand Meyer, Wintersemester 2005/2006

General info: News | Course description | Course book | Help Forum | Downloads | Traffic Software | Further reading
Lectures: Schedule | Slides and lecture videos | Slides and lecture videos from last year (winter semester 2004/2005)
Exercises: Registration | Lab session | Schedule | Assistants | Exercise topics

General info

News

Check the German version of this page.

 Reading material

This week

Slides for lecture 14

Course description

Title and ID

Introduction to Programming
ID (Vorlesungsnummer): 252-0001-00

Content

Foundations of object-oriented programming. Objects and classes. Interfaces of a class. Preconditions and postconditions, invariants, Design by Contract. Basic control structures. Assignment and referencing. Basic knowledge about the hardware. Basic data structures and algorithms. Recursion. Inheritance and deferred classes. Introduction to event-driven and concurrent programming. Fundamental concepts of software engineering: software production process, specification, documentation, reuse, quality assurance.

Course book

Bertrand Meyer: Touch of Class, lecture book (in preparation).

Help forum

You can use the Help forum to ask course- and exercise-related questions. The assistants will do their best to answer your questions as soon as possible.

Downloads

EiffelStudio 5.6 Free Edition is available for both Windows and Linux. Click here.

Traffic Software

The Traffic Software can be downloaded here.

Further reading

  • Bertrand Meyer: Object-Oriented Software Construction, Second Edition, Prentice Hall, ISBN 0-13-629155-4
  • Pete Thomas, Ray Weedon: Object-Oriented Programming in Eiffel, Second Edition, Addison-Wesley Eiffel in Practice Series, ISBN 0-201-33131-4
  • Frieder Monninger: Eiffel. Objektorientiertes Programmieren in der Praxis, H. Heise Verlag, Hannover, ISBN 3-882-29028-5
  • Bertrand Meyer: La produzione del software object oriented. Prentice Hall International, Hemel Hempstead, ISBN 88-256-0205-7
  • Giuseppe Callegarin: Nuovo corso di informatica. Basi di dati e sistemi informativi. Per le Scuole superiori. CEDAM, ISBN 8-813-19565-6

Lectures

  Slides and lecture videos

Week

Date

Topic

Slides (EN)

Video (mpeg4)

Week 1 Tue, 2005-10-25 Introduction  
Week 2 Mon, 2005-10-31 Dealing with objects  
  Tu, 2005-11-01 Eiffel, Objects and programs  
Week 3 Mo, 2005-11-07 The Interface of a Class  
  Tu, 2005-11-08 Just enough Logic  
Week 4 Tu, 2005-11-15 Invariants and object creation  
Week 5 Mo, 2005-11-21 References, assignment, and the object structure  
  Tu, 2005-11-22 Control Structures  
Week 6 Mo, 2005-11-28 Control Structures (continued)  
  Tu, 2005-11-29 Control Structures (end; see slides from Monday)  
Week 7 Mo, 2005-12-05 Abstraction  
    The Dynamic Model    
  Tu, 2005-12-06 Describing the Syntax  
Week 8 Mo, 2005-12-12 Inheritance and Genericity  
  Tu, 2005-12-13 Inheritance and Genericity  
Week 9 Mo, 2005-12-19 More about inheritance; Project assignment  
  Tu, 2005-12-20 EiffelMedia presentation    
Week 10 Mo, 2006-01-09 Introduction to recursion  
  Tu, 2006-01-10 Introduction to recursion  
Week 11 Mo, 2006-01-16 Container data structures  
  Tu, 2006-01-17 Event-driven programming with agents  
Week 12 Mo, 2006-01-23 An example: undo/redo  
  Tu, 2006-01-24 Topological sort - background  
Week 13 Mo, 2006-01-30 Topological sort - algorithm  
  Tu, 2006-01-31 From programming to software engineering  

 Slides and lecture videos from last year (WS05/06)

Week

Date

Topic

Slides (EN)

Slides (DE)

Video (mpeg4)

Week 1 Tue, 2004-10-19 Introduction    
Week 2 Mon, 2004-10-25 Dealing with objects    
  Tue, 2004-10-26 Eiffel, objects and programs    
Week 3 Mon, 2004-11-01 The interface of a class    
  Tue, 2004-11-02 Logic    
Week 4 Mon, 2004-11-08 Object creation    
  Tue, 2004-11-09 References, assignment, and the object structure    
Week 5 Mon, 2004-11-15 Control structures I    
  Tue, 2004-11-16 Syntax    
Week 6 Mon, 2004-11-22 Control structures II    
  Tue, 2004-11-23 Control structures II    
Week 7 Mon, 2004-11-29 The dynamic model    
  Tue, 2004-11-30 The dynamic model    
Week 8 Mon, 2004-12-06 Inheritance    
  Tue, 2004-12-07 Inheritance and Genericity    
Week 9 Mon, 2004-12-13 Recursion    
  Tue, 2004-12-14 Recursion    
Week 10 Mon, 2004-12-20 Container data structures    
  Tue, 2004-12-21 Introduction to .NET    
Week 11 Mon, 2005-01-10 Question time, more about inheritance    
  Tue, 2005-01-11 More about inheritance    
Week 12 Mon, 2005-01-17 Event-driven programming with agents    
  Tue, 2005-01-18 An example: undo/redo    
Week 13 Mon, 2005-01-24 Topological sort I: background    
  Tue, 2005-01-25 Topological sort II: algorithm    
Week 14 Mon, 2005-01-31 From programming to software engineering    
  Tue, 2005-02-01 "Object-Oriental Bazaar" and project presentations

Exercises

Lab session

The lab session takes place on Fridays, 12:00 - 14:00, in IFW D31. Two assistants will be there to help you and to answer your questions between 13:00 and 14:00.

Date

Assistants

Fr, 04.11.2004 Marie-Helene Ng Cheong Vee, Piotr Nienaltowski
Fr, 11.11.2004 Michela Pedroni, Marie-Helene Ng Cheong Vee 
Fr, 18.11.2004 Stephanie Balzer, Raphael Mack
Fr, 25.11.2004 Ursina Caluori, Michela Pedroni
Fr, 02.12.2004 Ilinca Ciupa, Sebastien Vaucouleur
Fr, 09.12.2004 Andreas Leitner, Piotr Nienaltowski
Fr, 16.12.2004 Ilinca Ciupa, Sebastien Vaucouleur

 Exercise groups

Day

Time

Place

 

Monday 15:00-16:00 check with your assistant: groups Lovelace, Dijkstra, Nygaard, Liskov, Knuth, Wirth, and Torvalds  
Tuesday 13:00-15:00 check with your assistant: groups Lovelace, Dijkstra, Nygaard, Liskov, Knuth, Wirth, and Torvalds  
or
Tuesday

13:00-14:00

group Goldberg, IFW B42
 
Wednesday 14:00-16:00 group Goldberg, HG E1.1  

Assistants

Assistant

Office

Phone number

E-Mail

Group

Exercise room

Language

Stephanie Balzer RZ J9 044 632 02 80 Stephanie Balzer Lovelace Mo ML J37.1
Di ETZ E9
German
Ursina Caluori Ursina Caluori Goldberg Di IFW B42
Mi HG E1.1
German
Ilinca Ciupa RZ J4 044 632 44 49 Ilinca Ciupa Nygaard Mo IFW A32.1
Di ETZ K91
English
Andreas Leitner RZ J4 044 632 30 21 Andreas Leitner Knuth Mo IFW A 36
Di LEC C14
German
Raphael Mack Raphael Mack Torvalds Mo ML H37.1
Di LFW C5
German
Piotr Nienaltowski RZ J3 044 632 44 68 Piotr Nienaltowski Dijkstra Mo ML H34.3
Di HG F3
English
Michela Pedroni RZ J8 044 632 76 84 Michela Pedroni Liskov Mo ML J34.1
Di HG F5
German
Sébastien Vaucouleur RZ J3 044 632 74 09 Sébastien Vaucouleur Wirth Mo ML F39
Di LEC C18
English

 Exercise sheets

Week

Topic

Links

Master solution

Week 1 Introduction (E-Mail, Internet, Forum) Exercise sheet Solution
Week 2 Taking off Exercise sheet Solution
Week 3 Of objects and features Exercise sheet Solution
Week 4 Object creation Exercise sheet Solution
Week 5 Loops Exercise sheet Solution  
Week 6 Smarties Exercise sheet Solution  
Week 7 Classroom Exercise 1 Übungsblatt Solution  
Week 8 Inheritance Exercise sheet Solution
Week 9 Final project Exercise sheet
Week 10 Classroom Exercise 2 Übungsblatt Solution  

Last modified on 24.01.2006

E-Mail: Piotr Nienaltowski