Programmiertechnik 1 - AIN/1
Wintersemester 2025/2026


Übungsaufgabe 6: HTML-Notenspiegel

  1. Vorbereitung

    Nach dem Download und dem Entpacken von Aufgabe6.jar ist in Ihrem Arbeitsverzeichnis prog1-uebungen\ neben dieser Aufgabenstellung Aufgabe6.html noch ein Paketverzeichnis aufgabe6\ mit folgende Dateien hinzugekommen:
    aufgabe6\package-info.javaPaketdokumentation
    aufgabe6\HtmlNotenspiegel.javavorgegebene Main-Klasse
    aufgabe6\Leistung.javavorgegebene abstrakte Oberklasse
    aufgabe6\LeistungsListe.javazu vervollständigende Klasse

    Das folgende UML-Diagramm gibt Ihnen einen Überblick über die vorgegebenen und die von Ihnen zu erstellenden Klassen:
    UML-Diagramm der vorgebenen und zu erstellenden Klassen

    Öffnen Sie ein Terminal im Arbeitsverzeichnis prog1-uebungen\ und erweitern Sie Ihre HTML-Dokumentation um das Paket aufgabe6 mit dem Kommando

      ant doc

    Öffnen Sie dann die gewohnten Quellen im Browser:
    doc/aufgabe6/package-summary.html
    https://www-home.htwg-konstanz.de/~drachen/prog1/prog1.html
    https://docs.oracle.com/en/java/javase/21/docs/api/java.base/module-summary.html

    Als Voraussetzung für das Bearbeiten dieser Aufgabe sollten Sie die Vorlesungsunterlagen bis mindestens Seite 5-31 nachbereitet und die zugehörigen Programmbeispiele nachvollzogen haben, insbesondere vererbung\Datum.java, vererbung\Termin.java, vererbung\OrtsTermin.java, vererbung\TerminTest.java, local\IntList.java, local\ListVar.java

  2. Programmierung der Klasse aufgabe6.Faecher

    Erstellen Sie im Paket aufgabe6 eine öffentliche Utility-Klasse Faecher mit folgenden Elementen:
  3. Programmierung der Klasse aufgabe6.UnbenoteteLeistung

    Erstellen Sie im Paket aufgabe6 eine öffentliche instanziierbare Klasse UnbenoteteLeistung für Entitäten als Unterklasse von aufgabe6.Leistung:
  4. Programmierung der Klasse aufgabe6.BenoteteLeistung

    Erstellen Sie im Paket aufgabe6 eine öffentliche instanziierbare Klasse BenoteteLeistung für Entitäten als Unterklasse von aufgabe6.Leistung:
  5. Programmierung der Klasse aufgabe6.LeistungsListe

    Erstellen Sie im Paket aufgabe6 eine öffentliche instanziierbare Klasse LeistungsListe für Entitäten:
  6. Programmierung der Klasse aufgabe6.HtmlFormat

    Erstellen Sie im Paket aufgabe6 eine öffentliche Utility-Klasse HtmlFormat mit einer öffentlichen Klassenmethode ausgeben:
  7. Test und Qualitätssicherung

    Sie sind erst fertig, wenn das Programm funktioniert und die Werkzeuge checkstyle, javadoc und spotbugs keine Fehler mehr melden!

  8. Abgabe

    Den spätesten Abgabetermin finden Sie auf der Webseite der Lehrveranstaltung https://www-home.htwg-konstanz.de/~drachen/prog1/prog1.html.

    Führen Sie Ihre in Schritt 7 erstellten Testfälle aufgabe6-in1.txt usw. vor und zeigen Sie die Notenspiegel im Browser.
    Zeigen Sie ihre Javadoc-Seiten mit dem verlinkten Quellcode der Klassen.
    Zeigen Sie das ausgefüllte Teilnahmeprotokoll.

Ergänzende Übungen für Schnellprogrammierer
freiwillig, pro Spiegelpunkt 1 Bonuspunkt



Prof. Dr. H. Drachenfels
Hochschule Konstanz - Impressum - Datenschutzerklärung
Letzte Änderung: 14.10.2025