Uni-Logo

Programmierzertifikat OO mit Java - Projekte

Während des Semsters sollen alle Teilnehmer des Kurses ein Projekt in Java umsetzen. Unten finden Sie zwei Projektvorschläge von uns. Eigene Themenvorschläge sind willkommen, müssen aber mit dem Tutor abgesprochen werden.

Bei jedem Projekt erwarten wir gut strukturierte Klassen und Interfaces. Diese sollten während des Semesters mit den Betreuern diskutiert werden. Die Klassen sollen Informationhiding konsequent umsetzen. Das bedeutet zuerst, dass die Klassen keine Attribute mit Sichtbarkeit public besitzen. Diese Vorgabe sollte möglichst nicht verletzt werden. Ausnahmen müssen mit den Tutoren abgesprochen werden.

Der Quellcode soll gut kommentiert sein. Namen müssen sinnvoll gewählt werden. Die code conventions for the Java programming language müssen eingehalten werden.

Im Laufe des Semesters werden wir kleine Zusatzfeatures der Projekte bekannt geben. Um diese gut umsetzen zu können, ist es wichtig, auf den guten Entwurf der Klassenhierarchien zu achten.

Die Projekte können in 3-4er Teams bearbeitet werden. Die Teams müssen ihrem Tutor die Namen und EMail-Adressen aller Teammitglieder per Mail bis Freitag, den 2.5.2008, mitteilen. Alle Mitglieder eines Teams müssen während des Semesters einen guten Überblick über das Projekt besitzen und während des BP Fragen zum Projekt beantworten können. Uns ist wichtig, dass alle Teammitglieder zu gleichen Teilen am Projekt mitarbeiten.

Tetris

Ziel des Projekts Tetris ist es, ein Tetrisspiel mit graphischer Oberfläche in Swing umzusetzen. Es sollte am Ende des Semesters ein Spiel mit folgenden Eigenschaft erstellt werden:

  • Das Spielfeld wird auf einer Swingoberfläche gemalt, wobei die Breite und Höhe (in logischen Koordinaten) des Felds sowie die Größe der einzelnen Blöcke (in Pixeln) einstellbar sein muss.
  • Es muss ein Punktesystem geben, das für entfernte Zeilen Punkte vergibt. Die Details des Punktesystems sind ansonsten frei. Es solle eine Bestenliste geben, die auf der Festplatte gespeichert wird.
  • Der dem aktuellen Stein folgende Stein soll jeweils zufällig ausgewählt werden. Er soll in einer Vorschau angezeigt werden.
  • optional: Ein Mehrspielermodus für einen Computer und/oder ein Mehrspielermodus fürs Netzwerk

"Schiffe versenken" als Netzwerkspiel

Bei diesem Projekt sind die Vorgaben nicht so streng und wir erwarten von den Gruppen, die dieses Projekt wählen, dass die Anforderungen an das Spiel selbständig erstellt werden. Die Anforderungen sollten dann mit einem Tutor abgesprochen werden.

Bei diesem Projekt sollte die Möglichkeit, das Spiel gegen einen simulierten Gegner zu spielen, umgesetzt werden.