Enrolment options
Java, Systemsprache
Programmieren in einer höheren Programmiersprachen mit höherer Entwicklerproduktivität statt Hardware-Nähe. Im Curriculum verwenden wir Java in den Modulen Software Engineering , Mobile Anwendungen, Web-basierte Anwendungen und Concurrent Programming . Die praxisrelevante Programmiersprache Java ist eine der verbreitesten Systemsprachen mit Fokus auf die Anwendungsentwicklung, die in Systemumgebungen, Diensterbringung für das Internet of Things und Web-Anwendungen eingesetzt werden. Studierende können dann auch schnell andere Sprachen und Umgebungen lernen und einsetzen (wie z.B. auch C#). Wahlfach zum Vertiefen der Programmier-Skills. Plattformunabhängig (Linux, MacOSX, Windows), wir verwenden Eclipse als IDE.
- Syntax C/C++ nahe, andere Philospophie (Polymorphie, Object als Wurzel der Klassenhierarchie, Garbage Collection, Reflection)
- Objektorientiert Programmieren, Vererbung, Sichtbarkeit, Interfaces, Generics, Typinferenz, Wildcards, Collections, Iteratoren, Lambda-Ausdrücke, Pakete
- Aufzählungstypen, innere Klassen, Ausnahmen, Module
- Patterns (Static Factory Method, Listener, Marker Schnittstellen)
- Verwendung eingebauter Datentypen und Bibliotheken (String, BigInteger, BigDecimal, java.util.* [List, Map, Set])
- Funktional und Objektorientiert, Lambda-Ausdrücke, Stream-API, filter, map, reduce, unendliche Ströme
- Nebenläufigkeit (Thread-API, Producer/Consumer)
- Bibliotheken Unit Testing, reguläre Ausdrücke, Laufzeitumgebung
- GUIs realisieren mit JavaFx
- C/C++ integrieren mit JNI
Voraussetzungen: Programmieren, Objektorientierung
- Dozent(in): Peter Barth