UNSERE

Schulungen

Rich Clients mit JavaFX entwickeln

Dauer:

3 Tage
Tageskurs

Kurssprache:

Deutsch

Unterrichtsmaterial überwiegend in englischer Sprache

Der Kurs führt die Teilnehmer durch den Prozess des Entwerfens einer Rich-Client-Anwendung mit JavaFX. Unter Verwendung des Model-View-Controller (MVC)-Musters und eines Fallstudienansatzes analysieren, entwerfen und entwickeln die Teilnehmer die Benutzeroberfläche, verbinden die Benutzeroberfläche mit einer Datenbank und verbinden schließlich die Benutzeroberfläche mit einem RESTful-Webdienst. Die Benutzeroberfläche wird unter Verwendung wichtiger Java FX-Komponenten erstellt, darunter Layouts, UI-Steuerelemente, Datenstrukturen wie ObservableList, Diagramme, Smart Tables, CSS und JavaFX-Parallelitätsbibliotheken. Die Teilnehmer lernen, ihrer Anwendung zwei- und dreistufige Funktionen hinzuzufügen, indem sie mithilfe der Java Persistence API (JPA) eine Verbindung zu einer Datenbank herstellen. Schließlich lernen sie, ihre Anwendung mithilfe von JAX-RS und der Jersey-API mit einem RESTful-Webdienst zu verbinden.

Weitere Themen sind:
  • Verpacken und Bereitstellen Ihrer Anwendung
  • Sichere Anwendungen entwickeln
  • Signieren einer Anwendung und Authentifizierung
  • Hinzufügen der Protokollierung zu Ihrer Anwendung
  • Implementieren von Unit-Tests mit JUnit

Lernen:
  • Erstellen Sie eine grafische Benutzeroberfläche mit Java FX
  • Verbinden Sie eine Java FX-GUI mithilfe von JPA mit der Datenbank
  • Verbinden Sie eine Java FX-GUI mit einem RESTful-Webdienst
  • Verpacken und implementieren Sie eine Java FX-Anwendung
  • Signieren Sie eine Java FX-Anwendung

Einführung

  • Bereitstellung eines Überblicks über Rich Client-Anwendungen (RIAs)
  • Bereitstellung eines Überblicks über JavaFX


Die Broker-Tool-Anwendung

  • Beschreibt einen Überblick über BrokerTool
  • Beschreiben des BrokerTool-Datenbankschemas
  • Bietet einen Überblick über die Anwendung von Henley Automobile


JavaFX-Übersicht

  • Demonstration einfacher JavaFX-Anwendungen
  • Was ist JavaFX?
  • Erkundung der JavaFX-API
  • JavaFX Scene Graph verstehen
  • Wie erstelle ich eine JavaFX-App?
  • Erstellen einer JavaFX FXML-Anwendung
  • Vergleich von JavaFX mit Swing
  • Übersicht über die JavaFX-Funktionen


Generics und JavaFX-Sammlungen

  • Überprüfung der Java Generics-Syntax
  • Überprüfen von Java Generic Collection-Objekten
  • Überprüfung der ObservableList und ObservableMap der JavaFX Collection


UI-Steuerelemente, Layouts, Diagramme und CSS

  • Scene Graph im Detail verstehen
  • Verwenden von UI-Steuerelementen in einer JavaFX-Anwendung
  • Verwenden von Layoutfunktionen in der JavaFX-Anwendung
  • Verwenden von Diagrammen in der JavaFX-Anwendung
  • Verstehen der Verwendung von CSS in JavaFX-Anwendungen
  • Hinzufügen von Ereignissen zu JavaFX-Steuerelementen


Visuelle Effekte, Animation, Webansicht und Medien

  • Verwendung visueller Effekte in der JavaFX-Anwendung
  • Verwendung von Animations- und Übergangsfunktionen in der JavaFX-Anwendung
  • Beschreiben der Vorteile der Verwendung von WebView und WebNode
  • Beschreiben der Implementierung von Multimedia in JavaFX


JavaFX-Tabellen und Client-GUI

  • Smart Table erstellen
  • Beschreiben der BrokerTool-App-Schnittstelle
  • Bestimmen, welche JavaFX-Komponenten in der BrokerTool-Schnittstelle verwendet werden sollen
  • Anzeigen von BrokerTool-Daten und Bestimmen, welche Diagramme und Tabellen zum Anzeigen von Daten verwendet werden sollen
  • Anwenden von CSS auf eine JavaFX-Anwendung


JavaFX-Parallelität und -Bindung

  • Beschreiben von Eigenschaften und Bindung in JavaFX
  • Implementierung von Threading und Parallelität in JavaFX


Java Persistence API (JPA)

  • JPA-Konzepte verstehen
  • Komponenten der JPA-Architektur verstehen
  • Was sind Transaktionen?
  • Durchführen von CRUD-Operationen mithilfe von Entity und Queries


Anwendung des JPA

  • Identifizieren von Entitätsbeziehungen
  • Verwendung der Kriterien-API in der JavaFX-Anwendung
  • Anwenden von JPA in der HenleyApp-Anwendung
  • Anwenden eines zweistufigen Designs


Implementierung eines mehrschichtigen Designs mit RESTful-Webdiensten

  • Vergleich des dreistufigen Designs mit dem zweistufigen Design
  • Beschreiben von JAX-RS-Webdiensten
  • Verwendung von JAX-RS-Webdiensten in der HenleyServer-Anwendung


Herstellen einer Verbindung zu einem RESTful-Webdienst

  • Testen des REST-Webdienstes mit HTTP und HTML
  • Entwicklung von JAX-RS-Webservice-Clients
  • Identifizieren, wie man einen Jersey RESTful-Client entwickelt
  • Überprüfung der Implementierung von Webdienst-Clients von HenleyApp


Anwendungen packen und bereitstellen

  • Verwenden von jar zum Packen von Java-Anwendungen
  • Anwendungen bereitstellen
  • Bereitstellen eingebetteter Anwendungen
  • Bereitstellen von Jar mit Java Web Start
  • Verwenden eines Installationsprogramms
  • Bereitstellen von Rich Internet mit dem Deployment Toolkit


Sichere Anwendungen entwickeln

  • Beschreiben der Aspekte der Sicherheit
  • Beschreiben grundlegender sicherer Codierungskonzepte
  • Vermeidung häufiger Injektions- und Einschlussangriffe
  • Schutz vertraulicher Daten
  • Einschränkung der Zugänglichkeit von Klassen
  • Veränderlichkeit verstehen
  • Auflistung der im Internet verfügbaren Sicherheitsressourcen


Signieren einer Anwendung und Authentifizierung

  • Beschreibung der Verschlüsselung mit öffentlichen und privaten Schlüsseln
  • Beschreibung digitaler Signaturen
  • Einführung von SSL/TLS
  • Grundlegendes zum HTTP-Authentifizierungsmechanismus
  • Verwenden von HTTPS mit einer Anwendung


Protokollierung

  • Übersicht über die Java Logging API
  • Erstellen eines Logger-Objekts
  • Protokollebenen festlegen
  • Überprüfung der Protokollierungsmethoden
  • Konfigurieren von Logger-Handlern und Formatierern
  • Verwenden der Logger-Konfiguration


Implementieren von Unit-Tests und Verwenden der Versionskontrolle

    • Unit-Tests, Testfälle und Funktionen von JUnit verstehen
    • JUnit-Testfälle verstehen und schreiben
    • Verwendung der NetBeans-Unterstützung für JUnit
    • Verwendung des Versionskontrollsystems