49
Die Alternativen für`s Frontend Webapplication- Technology ©2008 Michael Grosser grosserDOTmichaelATgmailDOTcom

Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

  • Upload
    grosser

  • View
    3.935

  • Download
    0

Embed Size (px)

DESCRIPTION

Welche aktuellen Webtechnologien gibt es, wie kann man sie vergleichen, was ist am besten für XVergleich Javascript vs Actionscript, wie funktioniert was und was sind die Vorteile/Nachteile, wo sollte man was benutzen

Citation preview

Page 1: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Die Alternativen für`s Frontend

Webapplication-Technology

©2008 Michael GrossergrosserDOTmichaelATgmailDOTcom

Page 2: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

KonzepteIm Browser- JS

Browser Plugin- Java Applets- Flash / Flex- Silverlight

Von Überall Startbar- Java Web Start / JavaFX

Mischformen- GWT (Java + CSS)- Java2Script (SWT)- Echo (SWT+HBN)- ThinWire

Page 3: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Warum im Browser ?- Immer aktuell- Keine Installation- Daten überall verfügbar- Hype Faktor (Social Bookmarking)- Plattform unabhängig- Keine Installationssoftware (für n Systeme)

Page 4: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Warum NICHT im Browser ?- Geringe Grafikleistung- Wenig System Interaktion (Treiber/Dateien)- Zuviel Code (Video/Photobearbeitung)- Für PCs ohne/mit langsamem Internet

Page 5: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Vorteile der HTMLnähe- Ladezeiten / Dateigröße- Bookmarks / Tabs / Mittelklick- Browser-Cache / Back-Button… - Browser Plugins(Autofill/Better-X…)- Drucken- Bilder speicherbar- Browseranpassung (Scroll/Seitenwechsel)- Formatierungen übertragbar- Inhalte ohne Scripte Scraping- Nutzer erweitern Angebot (z.B. GM)- Zugänglichkeit(Keine Bilder, Blinde…)

Page 6: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Vorteile der HTMLferne- GUI Builder(SWT/Thermo/Expression)- halbwegs closed source- Browserunabhängig / nur 1 Sprache- Inhalte werden nur 1 mal geladen

Statische Sprachen- Refactoring- Code Analyse- Code-Basis- Integration mit dem Backend

Page 7: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Meine Oma benutzt AJAX!

Page 8: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

JavaScript- Einfach / überall unterstützt- Kämpft mit Browser Unterschieden- DOM beschränkt Obj. Anzahl/Animation- Kaum Medien Interaktion- Durch Browser (Navigation/Eingabe/…) stark

Page 9: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Möglichkeiten durch Offenheit

Tasks für GMail Multilogin

Preisvergleich

Page 10: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Scraping

Page 11: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 12: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 13: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 14: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 15: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 16: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 17: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Flash/Flex-Flash:

- Animation / Interaktion - Spiele / Filme / Werbung

- Flex: - Anwendungsentwicklung- Markup Sprache Elemente- IDE für komplexere Programme

- Verbreitung ca. 95-99%- Video / Audio Interaktion- Webcam / Mikrofon integrierbar- Speicherplatz auf Client reservierbar (LSO)

Page 18: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Flash/Flex- Geschlossenes durch swf Codierung- RIA für den Desktop durch AIR- Aktuell (Angst vor Silverlight ?):

- Preissenkungen für Server ( flv4php)- Flex wird OSS- OS vieler Protokolle/Schnittstellen(AMF)- OS Nachbau vom Player (Red5)

Page 19: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 20: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 21: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 22: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 23: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Silverlight- Textbasier Offen Google/Blinde- Markup Sprache Inhalte/UI Elemente XAML- XAML einfügen + ansprechen(SOM) JS

Code- C# VB Python Ruby

- Riesige Codebase- Tools/Refactoring- Front/Backend in der selber Sprache

- .NET Entwickler (WPF) Web- Mehr CPU fähig

Page 24: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

SilverlightMedia-Video Bearbeitung/Interaktion- Effektivere Video Formate (VC1+H264+WMV)/Audio- Video Streaming von jedem Server- WMA PNG XPS Unterstützung

Setup- (noch)keine Linux Unterstützung (Moonlight)- einfach Installation / Vista- automatische Aktualisierung

Page 25: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

XAML

Page 26: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 27: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Expression Blend - Serie

Page 28: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 29: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

JavaFX- Java Web Start + Scriptsprache- Kein Compilieren"Tedious method calling and instantiation get replaced with declarative initialization and event wiring all packaged in an easy to read scripting language" - Extra Fenster + Warnmeldungen(Firewall & Signatur)

Page 30: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

JavaFX

Page 31: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

JavaFX

Page 32: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Die MatrixJS Mischfor

m(+CSS)

Java->JS

Java Web Start

FlexFlash

Silverlight

Statisch

Rich UI

Gering Komp.

Mittlere Komp.

Hohe Komp.

Spiele

Video/Audio

Page 33: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Get a job!

Page 34: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 35: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

JS vs AS

Bereit für den Mainstream

©2008 Michael GrossergrosserDOTmichaelATgmailDOTcom

Page 36: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )
Page 37: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Webhorror - ACID 2 (2005)IE 7IE6

Opera 9 Firefox >2

IE 8

Firefox 1.5

Page 38: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

JS- Interpretiert Browserunterschiede - Sprach Unterschiede gering (s. ACID 3)- HTML –> DOM (sehr unterschiedlich)

Page 39: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

JS

- Prototype – gut/solide- JQuery – einfach/robust: “write less do more“- Dojo – sehr viele Erweiterungen / oft für Großprojekte eingesetzt- Ext – Abstraktion in Elemente Canvas/Box

Page 40: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

GrundproblemeJS- Browserunterschiede <-> Innovation- Kein Compiler/Typenüberprüfung

AS- Extra Plugin(ca. 95%), installierbar? - Komplett laden/gecached Inhalte- Schwache Trennung Layout/Code- Source nicht einsehbar- Kosten bei Erfolg (Builder: 249$+Charting:699$ Media Server : $4,500$)

Page 41: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

GrundkonzepteJS (“the world's most misunderstood language”)- Code Verhalten für Struktur (DOM)- mehrere Komponenten selbe Struktur- Code + Struktur nachladbar

AS- muss alles laden- Verhalten an die Struktur gebunden- Komponente = Struktur+Verhalten- Neuer Code/Struktur schwer

Page 42: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

JS AS- AS(ES4) = JS(ES3) + “syntactic sugar”- viel in JS möglich, nur ungewohnt

Page 43: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

OnClickJS:

AS:

Page 44: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Neuer InhaltJS:

AS:

Page 45: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

JS- File > Print + extra CSS: media=“print” -> oft gute Ergebnisse- window.print()

AS- Druckvorgang durch Knopfdruck- New FlexPrintJob, if(job.start()){ job.addObject(…); job.send(); };- zu druckende Elemente der Application hinzugefügen, nach dem Drucken entfernen

Drucken

Page 46: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

JS- Text korrekt übersetzt vom Server _(X) - Übersetzungstabelle (extra script tag)

AS- Übersetzung vom Server laden- Übersetzung via ExternalInterface aus JS- Nachladen / 1 Anwendung pro Sprache

Internationalisation

Page 47: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Einfache Entscheidung ?

Page 48: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Flash/Flex Einsatz ?Ja- Schutz von Bildern/Inhalten wichtig- Medien bearbeiten- Lange / Tiefe Navigation ? (1 mal laden)

Nein- Tabellen / Business-anwendungen- einfache/textlastige Anwendungen- Komplexität / Grafiklastigkeit gering

Page 49: Webtechnologien fuer das Frontend und Flash( Flex ) Vs Js( Ajax )

Quellenhttp://code.google.com/webtoolkit/http://www.thinwire.com/http://j2s.sourceforge.net/

http://www.greasespot.net/http://dathompson.blogspot.com/2007/12/tasks-in-gmail.htmlhttp://blog.rememberthemilk.com/2007/12/rtm-gmail-task-management-goodness.htmlhttp://scrubyt.org/

http://www2.rasterwerks.com/game/phosphor/beta1.asphttp://blog.papervision3d.org/

http://silverlight.net/http://msdn2.microsoft.com/en-us/library/ms752059.aspx

http://www.sun.com/software/javafx/index.jsphttp://download.java.net/general/openjfx/demos/javafxpad.jnlp

http://jquery.com/http://www.prototypejs.org/http://mootools.net/http://script.aculo.us/http://extjs.com/http://extjs.com/deploy/dev/examples/desktop/desktop.html

http://paul.irish.aurgasm.us/2008/javascript-css-selector-engine-timeline/

http://www.indeed.com/jobtrendshttp://en.wikipedia.org/wiki/Acid2

http://www.windowsvista.si/main.htmhttp://www.thegooglecache.com/flash-website-flowchart.jpghttp://noticiastech.com/wordpress/wp-content/uploads/2007/04/microsoft_silverlight_c.jpg