Seminar „Java SE 8 – Fortgeschrittene Programmierung“

Aufbau-Seminar

Beschreibung

Dieses Aufbau-Seminar richtet sich an EntwicklerInnen, die ihre bereits gewonnenen Erfahrungen und Kenntnisse in der Entwicklung mit der Java Standard Edition (Java SE 8 oder Vorgängerversionen) vertiefen möchten. Themen der Schulung sind beispielsweise die Grundlagen der Entwicklung verteilte Anwendungen sowie die Entwicklung sicherer Anwendungen. Daneben werden praktische Einsatzmöglichkeiten für eine Reihe speziellerer Themen aufgezeigt, wie zum Beispiel Reflexion, Annotationen, Proxies oder Scripting der eigenen Anwendungen mittels JavaScript der JVM. 

Dieses Seminar berücksichtigt besonders die neuen Features aus dem JDK 8. So liegt ein besonderer Schwerpunkt auf dem effektiven Einsatz von zum Beispiel Lambda-Ausdrücken, Methoden-Referenzen und der Stream-API für Collections.

Zielgruppe

Programmierer, Softwareentwickler

Voraussetzungen

Grundkenntnisse in der Programmierung mit Java SE 8 (vergleichbar mit dem Seminar “Java SE 8 – Grundlagen“) sind erforderlich.

Empfohlene Schulungsdauer

4 – 5 Tage

Schulungsunterlagen

Literatur nach Absprache.

Inhalt

Neue JDK 8-Features voll ausnützen

  • Effektives Arbeiten mit Lambda-Ausdrücken und Methoden-Referenzen
  • Die neue Stream-API für Collections
  • Die neue Date-Time-API
  • Default-Methoden für Interfaces
  • JavaFX-Beans, JavaFX-Properties und Bindings

Grundlagen verteilter Anwendungen

  • Kommunikation über TCP/IP-Sockets
  • Remote Method Invocation (RMI)
  • URLs und URLCollections
  • Apache HttpClient
  • Eingebettete HTTP-Server
  • Web-Container

Sichere Anwendungen entwickeln

  • Das Sandbox-Modell in Java
  • Policies und Permissions
  • Der SecurityManager
  • ClassLoader
  • Signieren von Code
  • Java Authentication and Authorization Services (JAAS)

Die Reflexion-API

  • Grundlagen: Metadaten zur Laufzeit
  • Zugriff auf Klassen, Methoden und Attribute
  • Methodenaufruf per Reflexion
  • Objektkonstruktion per Reflexion

Praktische Anwendung von Annotations

  • Grundlagen: Annotationen für Compiler, Tools und zur Laufzeit
  • Definition eigener Annotationen
  • Annotationen zur Laufzeit auslesen
  • Praxisbeispiel: Dependency Injection (DI)

Hilfsmittel zur Speicherung von Information

  • Die Klasse Properties
  • Serialisierung und Deserialisierung von Objekten 
  • Persistierung von Objekten in XML
    mit der Java Architecture for XML Binding (JAXB)

Hilfsmittel zur Erweiterung der Anwendungsfunktionalität

  • Entwicklung von Proxies
  • Ausführung von JavaScript in der Java Virtual Machine (JVM)
  • Management und Monitoring von Java-Anwendungen
    mit der Java Management Extension (JMX)