Uni-Logo

Programmierzertifikat OO mit Java - Projekt - Tetris

Während des Semsters sollen alle Teilnehmer des Kurses ein Projekt in Java umsetzen. Unten finden Sie einen Projektvorschlag 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. 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.

    Sie können auch eine Bibliothek zur Darstellung Ihres Spiel einsetzen.
  • 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