In der Veranstaltung werden ausgewählte weiterführende Themen der fortgeschrittenen  Softwareentwicklung am Beispiel von Java behandelt.

-          Reflection: dynamisch auf den Code zugreifen, Typinformation zur Laufzeit, Objekterzeugung und Methodenaufrufe über Reflection, Annotationen, Dynamic Proxy, Service Loader

-          Typsystem: Typsystem, Varianz, Liskovsches Substitionsprinzip, Vertiefung Generics, Read-Only-Objekte

-          Softwareentwicklung: Testen (jUnit), Build-Prozesse (ant/maven), Logging, Javadoc

-          Datenbankanbindung mit Java (JDBC)

-          Persistenz – JPA

-          Objekt-relationales Mapping

-          Java Enterprise Edition (Java EE): Unternehensanwendungen, JEE-Server, Servlets, Beans (EJB), Transaktionen, Context and Dependency Injection (CDI), …


Grundkenntnisse in Java sind hilfreich, werden aber nicht vorausgesetzt. Die benötigten Kenntnisse werden am Anfang kurz wiederholt.