Proseminar: Best Practices of Modern and Efficient Software Engineering
Lehrveranstaltungsnummer: 18ss-61549Dozenten:
Betreuende Assistenten:
Termine: TBD
- Kick-Off Meeting: TBD
- The proseminar will be held as a block course with presentations at the end of the semester.
Art der Veranstaltung:
ProseminarLanguage:
de/enBeschreibung: Das Proseminar soll zur Vorbereitung einer Vertiefung im Umfeld der Softwaretechnik und Softwareentwicklung dienen, um die Konstruktion komplexer Software in Bachelor- und Masterprojekten zu erleichtern. Java als Sprache und als Entwicklungsplattform bleibt eins der beliebtesten Werkzeuge in der modernen Software-Entwicklung. Im akademischen Umfeld wird Java zwar eingeführt, wichtige Aspekte der praktischen Anwendung kommen oft zu kurz.
Das Ziel dieses Proseminars ist es, die tiefergehenden Aspekte der Java Programmierung zu untersuchen und die Best-Practices zu identifizieren und vorzustellen. Die Ergebnisse sollen anschließend ausgearbeitet und in einem Vortrag vorgestellt werden.
Materialien:
Voraussichtliche Themen:
- (1) Professioneller Umgang mit Nebenläufigkeiten: Multithreading und andere Concurrency Paradigmen in Java
- (2) Java Exceptions und alternative Fehlerbehandlung-Strategien
- (3) Java in der Tiefe: Generics in Java und anderen Sprachen
- (4) Dependency Injection: Inversion of Control and Java DI Frameworks
- (5) Anonyme und innere Klassen in Java und ihre Verwendungsmuster
- (6) Enteprise Java Beans: ein Framework für große skalierbare Software
- (7) Java Guava: ausgewählte Aspekte der Guava-Bibliothek
- (8) Grundlegende Design Pattern und ihre Anwendung in Java
- (9) Architektur und Design Pattern im Kontext der GUI Entwicklung mit Java
- (10) Architektur und Design Pattern im Kontext von Verhalten und Kommunikation
- (11) Effektive Definition und Handhabung von Strukturen
- (12) Fortgeschrittene Java Strukturen und Coding Guidelines
- (13) Verhaltensmodellierung mit UML
- (14) Architekturmodellierung mit UML
- (15) Code Metriken und deren Werkzeugunterstützung in Eclipse
- (16) Testen von Java Programmen: JUnit, TestNG