Angestrebte Lernergebnisse / Learning Outcomes
Die Studierenden können in Einzelarbeit und auf Basis exakter jedoch veränderlicher Anforderungen größere Programme mit graphischen Benutzeroberflächen kodieren,
indem Sie Programmiersprachenkonzepte für Objekt-Orientierte Programmierung sowie gängige Frameworks und Libraries verwenden,
um später große und wartbare Systeme kodieren zu können.
Inhalt
- Objekt-Orientierte Programmierung, insbesondere
- Abstraktion
- Klassen
- Interfaces
- Vererbung
- Polymorphie
- Visibilities
- Basics UML zur Visualisierung
- Grundlegende Muster wie z.B
- Singletons
- Callbacks
- Observer
- Weitere Essentials, wie
- Packages
- Generizität
- Ausnahmebehandlung
- ggfs. Lambdas
- Frameworks und Libraries
- zur Serialisierung / Deserialisierung (z.B. java.io)
- zur Erzeugung von graphischen Benutzeroberflächen (z.B. Android, JavaFX)
- zum Logging
- Umgang mit Versionsverwaltungs-Tools wie Git bei Einzelarbeit
- Git-Basics (Repositories, Commits etc.)
- Repositories aufsetzen (git clone, git init)
- Versionen erzeugen (git commit)
- Versionen markieren (git tag)
- Vorlesung
- Übungen zu einzelnen Inhalten
- begleitende Projektaufgabe:
- Ausgangssituation: Exakt spezifizierte Anforderungen an ein kleines System (z.B. Adressverwaltung mit Android oder JavaFX-GUI)
- Zielsituation: lauffähiges System
Materialien/ Ressourcen
- Liste ausgewählter Literatur und Web-Ressourcen
- Vorlesungsunterlagen
- Übungsunterlagen inkl. Lösungen
- Projekt-Meilensteinbeschreibungen
- vorkonfigurierte Entwicklungsumgebungen
- vorgefertigte Entwicklungsstände