RAP für RCP-Entwickler

Die Remote Application Platform (RAP) ermöglicht eine internetfähige Implementierung von SWT (Standard Widget Toolkit), JFace und der Eclipse Workbench. Dank RAP können RCP-Entwickler mächtige browser-basierte Java-Anwendungen erstellen, ohne sich tief in neue Technologien einarbeiten zu müssen.

Die Kursunterlagen wurden von den RAP-Projektleitern und Committern erstellt, also den Entwicklern dieser Technologie. Der Kurs baut auf den vorhandenen RCP-Kenntnissen der Teilnehmer auf. Von unseren Trainern mit ihrer jahrelangen Erfahrung in der Produktentwicklung erfahren Sie alles darüber, wie Sie mithilfe der RAP die Entwicklung Ihrer Web-Anwendungen voran bringen können. Darüber hinaus profitieren Sie von unserem Insider-Wissen und es wird besonderer Fokus darauf gelegt, wie bestehende RCP-Anwendungen in RAP portiert werden können und man einen Code generiert, der gleichermaßen von Web- und Desktop-Anwendungen genutzt werden kann.

Dies alles lernen die Kursteilnehmer schrittweise in einer Reihe von praxis-orientierten Sitzungen. Da wir die Teilnehmerzahl bewusst auf 6-8 Personen beschränken, lernen Sie RAP in der Tiefe verstehen und unsere Experten können sehr individuell auf Ihre jeweiligen Anforderungen eingehen.

Kursdauer: 2 Tage

 

Termine und Anmeldung

Weitere Informationen

Kursziel:

Sie lernen, die zugrunde liegenden Konzepte der Remote Application Platform (RAP) verstehen und Ihre erworbenen Kenntnisse in Ihren Web-Entwicklungsprojekten anzuwenden. Sie werden mit der optimalen Vorgehensweise bei der RAP-Entwicklung vertraut und lernen den Zusammenhang zwischen RCP und RAP kennen. Weiterhin erfahren Sie, wie Sie vorhandene RCP-Anwendungen in RAP portieren und einen von RCP und RAP gemeinsam nutzbaren Code generieren.

Teilnehmer:

Erfahrende RCP-Entwickler, die RAP zur Entwicklung von Web-Anwendungen einsetzen wollen. Software-Architekten, die unternehmensweit Software-Plattformen einrichten möchten.

Voraussetzungen:

Gutes Verständnis für die RCP-Konzepte. Erfahrung in der Anwendung der Eclipse Integrierten Entwicklungsumgebung (IDE). Kenntnisse in Java und objektorientierter Programmierung.

Format und Kurssprache:

Mindestens die Hälfte des Kurses besteht aus praktischen Übungen. Die Teilnehmer erhalten umfangreiches Begleitmaterial. Durch die kleine Kursgröße mit maximal 6-8 Teilnehmern ist ein schneller Lernerfolg sicher. Ein Rechner mit einer aktuellen Eclipse-Installation ist mitzubringen. Die Kurssprache ist deutsch. Kurse in anderen Sprachen sind auf Anfrage möglich.

Kursinhalte:

Einführung in RAP

  • Kurzer Überblick über die Geschichte von RAP
  • Vergleich zwischen RAP und RCP
  • Single-Sourcing
  • Nutzungsmöglichkeiten: Minimal oder Full Stack
  • Basistechnologien: Equinox, Servlets

Erste Schritte

  • RAP-Tooling & Zielplattform
  • I-Anwendung / I-Entry Point als RAP-Hauptausgangspunkte
  • Eine kleine RAP-Anwendung erstellen
  • Die Anwendung in Betrieb nehmen

Anforderung Lifecycle

  • Interne Funktionsweise von RAP
  • Anforderungsphasen / Response-Verarbeitung
  • Lifecycle-Adapter  (LCAs)

Threading-Modell

  • Apartment-Threading
  • Thread-Modell-Unterschiede zwischen SWT und RAP
  • Hintergrundprozesse für die Aktualisierung der Benutzeroberfläche schreiben
  • Service-Routinen verwenden

Single-Sourcing

  • Single-Sourcing: Eine Client-/Web-Anwendung auf Basis eines einzigen Codes schreiben
  • Wo sind Unterschiede zwischen RCP und RAP zu erwarten?
  • Umgang mit Abweichungen in Schnittstellen und Abhängigkeiten 
  • Implementierungsunterschiede mit Fragmenten verdecken
  • Single-Sourcing der RCP Mail-Anwendung

Server-seitige Scopes

  • Kennenlernen der verschiedenen Scopes in einer RAP-Anwendung (Request-, Session-, Anwendungs-Scope) 
  • Mit der RWT-Klasse Zugriff auf das Lifecycle-Management erhalten, Session- und Service-Stores
  • Daten mithilfe von Setting Stores über die Session-Lifetime hinaus speichern
  • Sitzungsbezogene Singletons erstellen

Internationalisierung (i18n)

  • RCP vs. RAP-Style Internationalisierung
  • Handhabung von RWT.NLS
  • Mehrsprachenunterstützung für Extensions

Sonstige RAP-Themen

  • Akivieren der Vor-/Zurück-Buttons (Browser-History)
  • Deep-Links und URL-Rewriting
  • Sitzungsmanagement und Zeitüberschreitungen optimieren
  • Registernavigation für RAP-Anwendungen aktivieren

Benutzerdefinierte Widgets

  • Beispiel für ein benuzerdefiniertes Widget
  • Benutzerdefinierte Widgets in SWT erstellen
  • Ein eigenes benutzerdefiniertes RWT-Widget in Java erstellen
  • Registrieren eines eigenen Java Scripts für die Client-seitige Widget-Darstellung
  • Einen eigenen Lifecycle-Adapter für die Synchronisierung von Server- und Client-Status des Widgets schreiben

Branding

  • Die URL benutzerdefiniert anpassen, Standard-Style und andere Aspekte der eigenen Anwendung
  • Schnittstelle entwerfen (Interaction-Design)
  • Style-Beispiele
  • Eigenes Branding einbringen

RAP-Einstellungen

  • Standardfarben, Verläufe, Rahmen, Abbildungen etc. ändern
  • Widget- / Style- / Status- / Varianten-spezifische CSS-Elemente verwenden
  • Kennenlernen, welche Eigenschaften vom jeweiligen Widget unterstützt werden
  • Ausweiten der RAP-Standardthemen oder ein eigenes, benutzerdefiniertes Thema behandeln

Einsatzmöglichkeiten

  • WAR 
  • OSGi-basiert
  • Vergleich der verschiedenen Möglichkeiten
  • WAR Export-Tooling (neu)

RAP-Lasttest

  • RAP-Lasttest mit JMeter
  • User-Interaktionen aufzeichnen und abspielen
  • Optimierungen und Fallstricke
  • Lastausgleich