Programmierung 2
Sommersemester 2008

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:

Termine

Die Vorlesung findet an folgenden Terminen statt:

  • Dienstag, 14.15-16 Uhr, Gebäude E2 5, Hörsaal 1
  • Freitag, 8.30-10 Uhr, im selben Hörsaal
Da die Vorlesung 2 SWS umfasst, wird nicht jeden Dienstag und Freitag Vorlesung sein. Wir werden die Termine der Vorlesung an der Bearbeitung der Projektaufgaben ausrichten, so dass der benötigte Stoff immer besprochen worden ist. Insbesondere wird die Vorlesung in den ersten Wochen zweimal pro Woche stattfinden.

Alle Termine

  • Wann/wo ist Vorlesung/Klausur?
  • Wann muss ich was wo abgeben?
sind im Vorlesungskalender zu finden:

Vorlesung

Vorlesung Datum
Wozu objektorientierte Programmierung? 15.04.08
Objekte und Klassen 18.04.08
Referenzen und Methodenaufruf 18.04.08
Kapselung, Konstruktoren, Basistypen 22.04.08
Ausdrücke und Anweisungen 29.04.08
Vererbung 06.05.08
Vererbung / Sammlungen 09.05.08
Sammlungen 16.05.08
"Kniffe" 16.05.08
Compiler 20.05.08
Compiler 2 27.05.08
Refactoring/Entwurfsmuster 03.06.08
Grafische Benutzeroberflächen 10.06.08
Beispielcode
C Einführung (mit den Folien vom 01.07.08) 24.06.08
C++ 01.07.08

Ü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.

Teil 2: Projekte

Während der Vorlesung werden die 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.
Ein Anleitung zum Installieren der nötigen Software finden Sie hier: Howto

Projekte

Projekt Bearbeitungszeitraum Anteil der Punkte Projekt ID Ausgabe/Abgabe Dokumentation
helloWorld 1.5 Wochen 5% prog2.project1/helloworld siehe Kalender
breakout 2 Wochen 15% prog2.project2/breakout siehe Kalender
elevator 2 Wochen 20% prog2.project3/elevator siehe Kalender
compiler 3 Wochen 25% prog2.project4/compiler siehe Kalender
tetris 4 Wochen 35% prog2.project5/tetris siehe Kalender

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 Projektübungen und der Klausur wie folgt zusammen:
50% Projektübung, 50% Endklausur
Zum bestehen der Vorlesung müssen mindestens 60% der Gesamtpunkte erreicht werden.

Klausurtermine

  • Endklausur: Samstag, 19.7. von 9-12 Uhr
  • Nachklausur: Freitag, 22.8. von 9-12 Uhr

Informationen + Nützliche Links

Ein 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 5.0 Update 15
Die Dokumentation der API: Java 2 Platform Standard Edition 5.0 API Specification

Die Vorlesung folgt keinem bestimmten Buch. Wir empfehlene 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, dass 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/2008/ · Stand: 2018-04-05 13:40