Dies ist ein Archiv des alten Softwaretechnik Lehrstuhls der Universität des Saarlandes. Es ist nicht länger aktuell.

  

Programmierung 2
Sommersemester 2009

Lehrstuhl für Softwaretechnik (Prof. Zeller)
Universität des Saarlandes – Informatik
Informatik Campus des Saarlandes
Campus E9 1 (CISPA)
66123 Saarbrücken
E-mail: zeller @ cs.uni-saarland.de
Telefon: +49 681 302-70970

Deutschsprachige Startseite Page d'acceuil en français English home page
  

Über die Vorlesung

Diese Vorlesung behandelt die Grundprinzipien der imperativen /objektorientierten Programmierung kennen. Dabei wird primär Java als Programmiersprache verwendet.
In dieser Vorlesung lernen Sie:
  • mittelgroße objektorientierte Systeme in Java zu implementieren und zu testen
  • kleinere, wohlstrukturierte Programme in C/C++ zu schreiben - im Wesentlichen als Umsetzung/Übersetzung der entsprechenden Java-Konzepte
  • sich in wenigen Tagen eine neue imperative/objektorientierte Sprache anzueignen, um sich in ein bestehendes Projekt einzuarbeiten

Dozent und Mitarbeiter

Dozent ist Prof. Sebastian Hack.
Den Übungsbetrieb betreuen:

Vorlesung

Vorlesung Datum
Organisatorisches 21.04.09
Objekte und Klassen 21.04.09
Java Grundlagen I 24.04.09
Einführung Projekte 28.04.09
Quelltext 28.04.09
Ausdrücke und Anweisungen 05.05.09
Schrittweise Verfeinerung
Quelltext: Nächste Permutation
08.05.09
Vererbung
Merkblatt Überladen / Überschreiben
12.05.09, 19.05.09, 26.05.09
Collections 26.05.09
Kniffe 02.06.09
Übersetzer 09.06.09
Übersetzer II 16.06.09
Entwurfsmuster 23.06.09
Grafische Benutzeroberflächen 23.06.09
Quelltext 23.06.09
Refaktorisierung 30.06.09
Einführung C 01.07.09
C++ 08.07.09

Übungsbetrieb

Der Übungsbetrieb besteht aus 2 Teilen: wöchentlichen Papierübungen und mehrwöchigen Projekten.

Teil 1: Wöchentliche Übungen

In wöchentlichen Gruppenübungen werden Konzepte aus der Vorlesung vertieft. Hier werden Verständnisfragen beantwortet und auch kleine Programme geschrieben, als Hausaufgabe abgegeben, korrigiert und in der Übung diskutiert. Dieser Teil ist papierbasiert - d.h. Programme und andere Beiträge werden auf Papier abgegeben.
In den Übungsgruppen werden Minitests geschrieben, die sich auf die Übungsblätter beziehen.

Die ersten Übungsgruppen finden am 6.5. statt.

Übungsblätter
Blatt Abgabe
Blatt 1 05.05.09
Blatt 2 12.05.09
Blatt 3 19.05.09
Blatt 4 26.05.09
Blatt 5 02.06.09
Blatt 6 09.06.09
Blatt 7 16.06.09
Blatt 8 23.06.09
Blatt 9 30.06.09
Blatt 10 14.07.09

Teil 2: Projekte

Während der Vorlesung werden Sie 4-5 größere Programmieraufgaben ("Projekte") in Java bearbeiten. Die Projekte werden automatisch getestet (mit öffentlichen, halb öffentlichen und geheimen Tests). Bestehen der öffentlichen und halb öffentlichen Tests ist Voraussetzung für die Abgabe der Projekte. Die geheimen Tests dienen der Bewertung.
Eine Anleitung zum Installieren der nötigen Software finden Sie hier: Howto

Projekte

Projekt Bearbeitungszeitraum Anteil der Punkte Projekt ID Ausgabe/Abgabe Dokumentation
helloWorld 1 Wochen 5% prog2.project1/helloworld siehe Kalenderproject1.pdf
burrows-wheeler 2 Wochen 15% prog2.project2/bw siehe Kalenderproject2.pdf
dpll 3 Wochen 25% prog2.project3/dpll siehe Kalenderproject3.pdf
compiler 3 Wochen 25% prog2.project4/compiler siehe Kalenderproject4.pdf
pac-man 3 Wochen 30% prog2.project5/pacman siehe Kalenderproject5.pdf

Scheinvergabe & Klausuren

Es wird eine Endklausur geschrieben und eine Nachklausur angeboten. Um zur Klausur zugelassen zu werden, müssen mindestens 50% der Punkte aus den Minitests (zu den Übungsblättern) erreicht werden Die Endnote setzt sich aus den Projekten und der Klausur wie folgt zusammen:
50% Projekte, 50% Endklausur
Zum Bestehen der Vorlesung müssen mindestens 60% der Gesamtpunkte erreicht werden.

Klausurtermine

  • Endklausur: siehe Kalender
  • Nachklausur: siehe Kalender

Informationen + Nützliche Links

Eine Anleitung zum Installieren und Benutzen der nötigen Software finden Sie hier: Howto
Um mit Java entwickeln zu können, muss eine Java Development Kit auf dem Computer installiert sein: JDK 6 Update 13
Die Dokumentation der API: Java 2 Platform Standard Edition 6.0 API Specification

Die Vorlesung folgt keinem bestimmten Buch. Wir empfehlen folgende Bücher:

  • Thinking in Java Sehr gutes und umfassendes englischsprachiges Buch.
  • Objects first with Java (von David J. Barnes & Michael Kölling) Ein ausführlich geschriebenes Buch, das sich an Programmiereinsteiger richtet: (deutschsprachige Ausgabe: Java lernen mit BlueJ). Beide Bücher sind in der Infobib vorhanden.

Weitere online verfügbare Bücher:

Als Editor empfehlen und unterstützen wir Eclipse.

Impressum Datenschutzerklärung

<schuler@st.cs.uni-saarland.de> · http://www.st.cs.uni-saarland.de/edu/prog2/2009/ · Stand: 2018-04-05 13:40