Hochschule der Medien Stuttgart - Studiengang Medieninformatik
In der Vorlesung Software-Entwicklung 2 werden grundlegende Konzepte, Methoden und Werkzeuge der objektorientierten Softwareentwicklung vermittelt. Aufbauend stehen insbesondere Modellierung, Vererbung, Abstraktion, Qualitätssicherung und Wartbarkeit von Software im Mittelpunkt. Die verwendete Programmiersprache ist Java JDK 25 and Maven 3.9+ für die Erstellung des Projektobjektmodells (POM).
Die Folien zur Vorlesung Software-Entwicklung 2. Die Inhalte werden nach und nach freigeschaltet.
Grundlagen, Kursorganisation, Arbeitsweise
Auffrischung zentraler Java-Konzepte
Versionierung mit Git
Klassendiagramme, grundlegende Entwurfsdiagramme
OOP-Grundlagen, Kapselung
Coupling, SOLID, Polymorphie, Interfaces
Listen, Maps, Typsicherheit
Fehler- und Ausnahmenbehandlung
Lesbarkeit, Wartbarkeit, Stilregeln
Unit-Tests, Logging-Konzepte
Nebenläufigkeit, Synchronisation
Funktionale Verarbeitung von Daten
Grundlegende grafische Oberflächen
Strukturierung größerer Systeme
Studierende bearbeiten im Rahmen der Vorlesung ein Softwareprojekt in Gruppen von 2–4 Personen. Neben der praktischen Umsetzung stehen Struktur, nachvollziehbare Entwurfsentscheidungen und Reflexion des eigenen Codes im Vordergrund.
Link zur Gruppeneinteilung in Moodle
JavaFX-Template für das eigene Java-Projekt.
Beispiel-Markdown für die README.md zur Übersicht der Dokumentation.
Jede Gruppe muss mindestens einmal einen Nachdenkzettel präsentieren.
Nachdenkzettel sind kurze, gezielte Denk- oder Reflexionsaufgaben, die Studierende dazu bringen sollen, über Konzepte nachzudenken und diese mit dem eigenen Projekt zu verknüpfen. Insgesamt müssen 10 Nachdenkzettel bearbeitet werden. Die 6 Pflicht-Nachdenkzettel müssen alle bearbeitet werden, von den 8 Wahlpflicht-Nachdenkzetteln sind 4 auszuwählen.
Beispiel-Code zu den Inhalten der Vorlesung
Link zum Moodle-Kurs im Studiengang Medieninformatik
Link zum GitHub Cheat Sheet
Link zum UML Cheat Sheet von oose Innovative
Link zum JUnit Tutorial von Java Code Geeks
Link zum Log4j2 Tutorial von Pankaj Kumar
Interessante Infos zur Funktionsweise der JVM
von Prof. Walter Kriha und Prof. Dr. Tobias Jordine