Informatik EF · freiwillige Zusatzleistung

Zugprojekt erweitern und präsentieren

Du kannst das Zugprojekt freiwillig weiterentwickeln und anschließend präsentieren. Ziel ist nicht ein möglichst großes Programm, sondern der klare Nachweis, dass du den Code selbst verstanden und deinen Eigenanteil eigenständig programmiert hast.

Wichtig: Die Präsentation ist der entscheidende Teil der Leistung. Du musst deinen Eigenanteil im Detail erklären können und auf Nachfragen zu deinem Code sicher antworten.

Worum geht es?

Ausgangspunkt ist das Zugprojekt aus dem Unterricht. Darin gibt es eine abstrakte Oberklasse für Wagen und konkrete Unterklassen wie Lok, Personenwaggon und Güterwaggon. Außerdem kennen die Objekte einander über Referenzen, sodass Bewegung weitergegeben werden kann.

Lokkennt den nächsten Wagen und kann Bewegung weitergeben
Personenwaggonerbt von der abstrakten Wagenklasse und kennt den Güterwaggon
Güterwaggonerbt ebenfalls von der abstrakten Wagenklasse
Das soll gezeigt werden

Programmierverständnis

Du zeigst, dass du Objekte, Attribute, Methoden, Vererbung, abstrakte Klassen und Referenzen nicht nur verwendest, sondern erklären kannst.

Das ist nicht nötig

Kein Großprojekt

Eine kleine, saubere Erweiterung ist besser als viele unklare Änderungen. Entscheidend ist, dass dein Eigenanteil nachvollziehbar und erklärbar ist.

Regeln für die Eigenarbeit

Die freiwillige Abgabe ist ein Nachweis deiner eigenen Leistung. Deshalb gelten klare Regeln.

Nicht erlaubt

Keine KI-Hilfe

Keine Chatbots, keine Codegeneratoren, keine automatisch erstellten Lösungen, keine KI-Erklärungen für deinen Code.

Nicht erlaubt

Keine fremde Hilfe

Keine Hilfe durch Mitschülerinnen oder Mitschüler, keine gemeinsamen Lösungen, keine kopierten Projektteile.

Erlaubt

Eigene Unterlagen

Du darfst deine Unterrichtsnotizen, das vorhandene Projekt, eigene ältere Übungen und die im Unterricht besprochenen Materialien nutzen.

Wenn du eine Stelle in deinem Projekt nicht erklären kannst, zählt sie nicht als eigener Leistungsnachweis. Bei unklarer Eigenständigkeit kann die Abgabe nicht zur Notenverbesserung berücksichtigt werden.

Mögliche Erweiterungen

Die folgenden Ideen sind nur Anregungen. Du musst keine dieser Ideen übernehmen. Ein eigener kleiner Ansatz ist ausdrücklich möglich.

Schienen sichtbar zeichnen

Erweitere die Methode zum Zeichnen der Schienen, sodass die Bewegung des Zuges optisch besser nachvollziehbar wird.

Möglicher Fokus: Methoden, Schleifen, Koordinaten

Koppeln und Entkoppeln verbessern

Die Kopplung könnte nur funktionieren, wenn Lok und Wagen nah genug beieinander sind. Entkoppeln könnte ebenfalls kontrolliert werden.

Möglicher Fokus: Bedingungen, Abstände, Objektzustand

Abstandskontrolle einbauen

Wenn die Lok zu nah an einen Wagen fährt, kann sie anhalten oder automatisch koppeln.

Möglicher Fokus: Getter, Vergleich von Positionen

Weitere Waggonart erstellen

Erstelle eine neue Unterklasse, zum Beispiel Speisewagen, Schlafwagen oder Tankwagen, mit eigener Zeichnung.

Möglicher Fokus: Vererbung, Überschreiben von Methoden

Optik verbessern

Lok und Waggons können Räder, Fenster, Türen, Farben oder Beschriftungen bekommen.

Möglicher Fokus: eigene Zeichnen-Methode

Steuerung erweitern

Zusätzliche Tasten könnten Geschwindigkeit, Richtung, Notstopp oder besondere Aktionen steuern.

Möglicher Fokus: Tastaturabfrage, switch, Methodenaufrufe

Mehrere Waggons verketten

Der Zug könnte aus mehr als zwei Waggons bestehen. Dabei muss klar sein, welches Objekt welches nächste Objekt kennt.

Möglicher Fokus: Objektverkettung, Referenzen

Stationen oder Haltepunkte

Der Zug könnte an bestimmten Positionen halten oder dort eine Aktion ausführen.

Möglicher Fokus: Koordinaten, Bedingungen, Programmablauf

Saubere Struktur verbessern

Du kannst Code aus der Main-Klasse in sinnvolle Methoden auslagern oder Methoden klarer benennen.

Möglicher Fokus: Lesbarkeit, Verantwortung von Klassen

Fehler beheben

Du kannst bestehende Stellen verbessern, etwa unvollständige Kommentare, Randverhalten oder nicht fertig umgesetzte Kontrollbedingungen.

Möglicher Fokus: Debugging, Verständnis des vorhandenen Codes

Was muss abgegeben werden?

Gib das BlueJ-Projekt bis spätestens 7.6. um 23:59 Uhr als ZIP-Datei ab. Der Projektordner muss so abgegeben werden, dass er direkt geöffnet und gestartet werden kann.

Projektdateien

Vollständiger Projektordner

  • alle Java-Dateien
  • BlueJ-Projektdateien
  • keine einzelnen Code-Schnipsel
  • Projekt als ZIP-Datei
Kurze README

Beschreibung deines Eigenanteils

  • Name und Klasse
  • kurze Startanleitung
  • Liste der geänderten Klassen
  • kurze Erklärung, was du selbst ergänzt hast

Präsentation

Die Präsentation ist der wichtigste Teil. Du zeigst dein Projekt live, erklärst deinen Eigenanteil und beantwortest Fragen zum Code.

Pflicht

Live-Demo

Du startest dein Projekt, zeigst die Erweiterung und erklärst, was man sieht.

Pflicht

Code-Erklärung

Du erklärst die geänderten oder neu geschriebenen Stellen im Code Schritt für Schritt.

Pflicht

Nachfragen

Du musst zu jeder relevanten Codezeile erklären können, was sie bewirkt und warum sie dort steht.

Typische Lehrerfragen

  • Welche Klasse hast du verändert und warum?
  • Welche Objekte kennen sich gegenseitig?
  • Wo wird eine Methode überschrieben?
  • Welche Attribute speichern den Zustand?
  • Was passiert beim Koppeln oder Fahren Schritt für Schritt?
  • Was würde passieren, wenn diese Zeile fehlt?

Was du besonders erklären können solltest

  • Warum `EBWagen` abstrakt ist
  • Wie `Lok`, `Personenwaggon` und `Gueterwaggon` davon erben
  • Wie Bewegung an gekoppelte Wagen weitergegeben wird
  • Welche Referenz welches Objekt kennt
  • Welche Teile wirklich dein Eigenanteil sind

Bewertungsvorgabe

Die folgende Gewichtung zeigt, worauf besonders geachtet wird. Eine optisch große Erweiterung bringt wenig, wenn sie nicht erklärt werden kann.

Anteil
Bereich
Erwartung
70%
Präsentation und Verständnis
Eigenanteil verständlich erklären, Codezeilen begründen, Nachfragen beantworten, Zusammenhänge zwischen Klassen und Objekten sicher darstellen.
20%
Funktion und Umsetzung
Projekt läuft, Erweiterung ist sichtbar oder nachvollziehbar, keine groben Programmabbrüche, Änderungen passen zum Ausgangsprojekt.
10%
Struktur und Lesbarkeit
Klassen und Methoden sind sinnvoll genutzt, Namen sind verständlich, Code ist nicht unnötig chaotisch, Eigenanteil ist auffindbar.
Für eine mögliche Notenverbesserung zählt vor allem, ob du glaubhaft zeigen kannst, dass du dein Projekt selbstständig verstanden und umgesetzt hast.

Checkliste vor der Abgabe

Ich habe allein gearbeitet.Keine KI, keine Hilfe von anderen Schülerinnen oder Schülern, keine fremden Lösungen.
Mein Projekt startet in BlueJ.Ich habe getestet, dass die Main-Klasse oder der vorgesehene Startpunkt funktioniert.
Ich kann meinen Eigenanteil zeigen.Ich weiß genau, welche Klassen und Methoden ich verändert oder ergänzt habe.
Ich kann meinen Code erklären.Ich kann bei Nachfragen zu jeder wichtigen Zeile sagen, was sie tut.
Ich habe eine kurze README ergänzt.Darin stehen Startanleitung, geänderte Dateien und eine kurze Beschreibung der Erweiterung.
Ich habe das ganze Projekt als ZIP vorbereitet.Nicht nur einzelne Java-Dateien, sondern den vollständigen BlueJ-Projektordner.
Ich gebe spätestens am 7.6. um 23:59 Uhr ab.Nach diesem Zeitpunkt wird die freiwillige Abgabe nicht mehr für die Notenverbesserung berücksichtigt.