• Save
Moderne Java Web-Technologien
Upcoming SlideShare
Loading in...5
×
 

Moderne Java Web-Technologien

on

  • 2,178 views

Interaktive Webapplikationen halten Einzug in unseren Alltag. Wollen Sie Ihre Webapplikationen modernisieren, gelangen Sie schnell in einen Dschungel von Technologien, Frameworks und Bibliotheken. ...

Interaktive Webapplikationen halten Einzug in unseren Alltag. Wollen Sie Ihre Webapplikationen modernisieren, gelangen Sie schnell in einen Dschungel von Technologien, Frameworks und Bibliotheken. Diese Präsentation stellt Ihnen die wichtigsten Java Technologien für Weblösungen vor, gruppiert sie, und beurteilt ihre Vor- und Nachteile. Der Referent stellt Ihnen einen Kriterien-Katalog vor, den Sie als Orientierungshilfe für eine bevorstehende Technologie-Evaluation nutzen können. JSF, AJAX und ULC werden gemäß diesem Kriterienkatalog evaluiert.

Statistics

Views

Total Views
2,178
Views on SlideShare
2,178
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Moderne Java Web-Technologien Moderne Java Web-Technologien Presentation Transcript

  • Moderne Java-Webclient-Technologien im Vergleich So finden Sie die richtige! 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Nikolaos Kaintantzis [email_address] © Zühlke 2008
  • Moderne Web-Applikationen …
    • Sind interaktiv
    • Unterstützen den User
    • Erschliessen viele Informationsquellen
    • Bestehen aus Seitenabschnitten, die der User separat aktualisiert
    • Sind nutzbar wie Desktop-Applikationen
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie
  • Nachhaltige Technologie-Auswahl ist schwierig
    • Unterschiedliche Technologien
      • Komplexität verbergen vs. Komplexität beherrschbar machen
    • Viele Produkte zur gleichen Technologie
      • Welcher Lösungsansatz passt zu meiner Problemstellung?
    • Schnelllebiges Umfeld
      • Halbwertszeit des Wissens wird immer kürzer
      • Trends lösen sich immer schneller ab
      • Investitionsschutz: Verwendete Technologie soll bei der Einführung noch aktuell sein
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie
  • Ziele dieses Vortrags
    • Übersicht betreffend Java-Web-Technologien
      • Gruppierung und Kurzvorstellung
    • Entscheidungsgrundlage bieten
      • Kriterienkatalog zur Evaluation
      • Vor- und Nachteile zeigen
      • Technologien bewerten
    • Jede Technologie hat Vor- und Nachteile: Welche passt in Ihr Umfeld?
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie
  • Welches sind die zukunftsträchtigen Technologien? 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Quelle: Gartner (Juli 2007) Web 2.0 Hype Cycle for Emerging Technologies 2007
  • Aktuelle Web-Technologien im Java-Umfeld 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails … Java FX Applets
  • Vorgehen / Agenda
    • Kriterienkatalog zur Evaluation
    • Gruppierung der Technologien resp. Produkte
    • Pro Gruppe
      • Kurzvorstellung der Technologien resp. Produkte
      • Evaluation eines typischen Vertreters gemäss Kriterienkatalog
    • Zusammenfassung
    • 3 Erfolgsfaktoren für Ihre Technologie-Auswahl
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie
  • Kriterien-Katalog zur Evaluation 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Installation / Deployment Hersteller- oder Community-Support Wartbarkeit Produktivität & Entwicklungswerkzeuge Ausbildung Security Performance Lizenzkosten Stärken Schwächen Priorität (projektabhängig)
  • Gruppierung von Web-Technologien im Java-Umfeld 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Java FX Applets
  • Java-Script basierte Web-Technologien 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Mit JavaScript angereicherte HTML-Seiten AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Java FX Applets
  • Generische Java-Clients 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Java auf Server und Client-PC Business-Logik und Daten serverseitig AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Java FX Applets
  • Autonome Java-Clients 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Java auf dem Client-PC / Serverseitige Technologie egal Businesslogik und Daten meist clientseitig Offline-Einsatz möglich AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Java FX Applets
  • „ Klassische“ Web-Technologien
    • Java VM auf dem Server Seitenaktualisierungen als Basis Erweiterungen ermöglichen, Seitenteile zu aktualisieren
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Java FX Applets
  • Vorstellung Struts und JSF
      • Struts
      • Altbewährt
      • Viel Know-how auf dem Markt
      • Open Source
    • JSF
      • Java EE 5 Standard
      • Komponenten-Modell
      • Bean-Management
      • Flexibel erweiterbar
      • Diverse Implementierungen
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie
      • Organisieren von Web-Applikationen nach dem MVC-Prinzip
      • Einfache Validierung
      • Navigation wird konfiguriert
    AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Applets Java FX
  • Vorstellung Spring MVC und WebFlow
    • Spring MVC
      • Ähnliche Konzepte wie bei Struts und JSF
    • Spring WebFlow
      • Für Wizards resp. Abläufe optimiert
      • Integrierbar mit JSF, Struts und Spring MVC
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie
      • Organisieren von Web-Applikationen nach dem MVC-Prinzip
      • Wenig verbreitet
    AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Applets Java FX
  • JavaServer Faces (JSF) Evaluation 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Schwächen Priorität Stärken Deployment Support Wartbarkeit Produktivität Ausbildung Security Performance Lizenzkosten
  • Java-Script basierende Web-Technologien 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Mit JavaScript angereicherte HTML-Seiten AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Java FX Applets
  • AJAX-Vorstellung
      • Nachladen von Seitenteilen
        • Aufgrund von Benutzer-Events
        • Änderungen beim Server
        • Timer
      • Mix von Standard Web-Technologien
      • A synchronous J avaScript A nd X ML
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Applets Java FX
  • AJAX Produkte-Übersicht (Ausschnitt) 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie GWT Dojo Prototype ADF 2.0 Trinitad Tomahawk Mabon Tobago Ajax4JSF Shale ICEFaces RAP qooxdoo Scriptaculous Von Hand AJAX DWR Backbase RCFaces DynaFaces Von Hand Java-Bibliotheken (JSF) Komponenten JS-Bibliotheken Java Java Script
  • AJAX von Hand 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Deployment Support Wartbarkeit Produktivität Ausbildung Security Performance Lizenzkosten Schwächen Priorität Stärken
  • AJAX mit Java-Script-Bibliotheken 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Deployment Support Wartbarkeit Produktivität Ausbildung Security Performance Lizenzkosten Schwächen Priorität Stärken *) Minimale Verbesserung *
  • AJAX mit Java-Bibliotheken 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Deployment Support Wartbarkeit Produktivität Ausbildung Security Performance Lizenzkosten Schwächen Priorität Stärken
  • AJAX mit JSF-Komponenten 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Deployment Support Wartbarkeit Produktivität Ausbildung Security Performance Lizenzkosten Schwächen Priorität Stärken *) JSF-Know-how vorausgesetzt *
  • Generische Java-Clients 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Java auf Server und Client-PC Business-Logik und Daten serverseitig AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Java FX Applets
  • Vorstellung Thinlets und ULC
    • Thinlets
      • Server erzeugt XML
      • Client erzeugt GUI aus dem XML
    • ULC
      • Server erzeugt und verwaltet GUI
      • GUI-Komponenten existieren auf Client und Server (Half-Objects)
      • Die beiden Hälften der Half-Objects kommunizieren gemeinsam
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Applets Java FX
      • JS-freie Alternative zu AJAX
      • Interaktiver und performanter als JS-Lösungen
  • Ultra Light Client (ULC) 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Deployment Support Wartbarkeit Produktivität Ausbildung Security Performance Lizenzkosten Schwächen Priorität Stärken
  • Autonome Java-Clients 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Java auf dem Client-PC / Serverseitige Technologie egal Businesslogik und Daten meist clientseitig Offline-Einsatz möglich AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Java FX Applets
  • Vorstellung Applets und Java FX Script
    • Applets
      • Altbekannt (90er) und schlechtes Image
      • Wiedergeburt 2008?
        • Quickstart
        • Java Consumer Runtime
        • Neue Implementierung des Java-Plug-In angekündigt
      • Ständig aktuelle Applikation wegen Browser-Plugin
    • Java FX Script
      • Angekündigt 2007 an der JavaOne
      • Konkurrenz zu
        • Adobe: Flash und
        • Microsoft: Silverlight
      • Deployment über
        • Java-Plug-In für Browser
        • Web Start
      • Ständig aktuelle Applikation wegen Java Web Start oder Browser-Plugin
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Applets Java FX
  • Java FX Script 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Deployment Support Wartbarkeit Produktivität Ausbildung Security Performance Lizenzkosten Schwächen Priorität Stärken
  • Zusammenfassung Technologievergleich 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Technologie Hauptstärke Hauptschwäche JSF Extrem flexibel. Alles ist austauschbar Lernkurve bis Konzepte verstanden AJAX von Hand Alles unter eigener Kontrolle Wartbarkeit und Zukunfts-Tauglichkeit AJAX mit JS-Bibliothek Bekannte AJAX-Probleme gelöst Jede Bibliothek hat eigene Syntax AJAX mit Java-Bibliothek Programmieren fast wie mit Desktop-Client Reduzierte GUI-API, d.h. reduzierte Funktionalität AJAX mit JSF-Komponenten Von AJAX- und JS-Entwicklung abgeschirmt JSF- und AJAX-Wissen um Komponenten zu schreiben ULC Programmieren fast wie mit Desktop-Client Eigene teure Komponenten notwendig Java FX Script Schnelle Entwicklung eines coolen Desktop-Clients Anbindung des Servers der Applikation überlassen
  • 3 Erfolgsfaktoren für Ihre Technologie-Auswahl 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Requirements- Engineering Usability 1. Sie wissen wer die Nutzer sind und was sie wünschen
  • 3 Erfolgsfaktoren für Ihre Technologie-Auswahl
    • 2. Sie wählen die zu den Anforderungen passende Technologie
        • Eigenen Kriterienkatalog verwenden
        • Lassen Sie sich genügend Zeit
    24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie Requirements- Engineering Technologie- & Produktauswahl Kriterien- Katalog Usability
  • 3 Erfolgsfaktoren für Ihre Technologie-Auswahl 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie
    • 3. Sie überprüfen Ihre Auswahl
        • Prototyp zeigt die Eignung der Technologie für Ihren Anwendungsfall
        • Ihre Mitarbeiter lernen über die Eigenheiten des Produktes
    Requirements- Engineering Technologie- & Produktauswahl Kriterien- Katalog Usability Prototyp erstellen Mitarbeiter- Ausbildung Applikation entwickeln
  • Fragen? 24. Januar 2008 Nikolaos Kaintantzis [email_address] Folie AJAX JSF Struts Spring MVC Web Flow ULC Thinlets Grails Applets Java FX Requirements- Engineering Technologie- & Produktauswahl Kriterien- Katalog Usability Prototyp erstellen Mitarbeiter- Ausbildung Applikation entwickeln