Web Lösungen mit JavaScript Frameworks

JavaScript FrameworksEgal ob es sich um komplexe Business Lösungen oder einfache Formulare handelt, stehen heute für die Realisierung von Web-Lösungen sehr mächtige Frontend Libraries zur Verfügung. Dabei spart man nicht nur Zeit und Geld bei der Umsetzung, sondern stellt gleichzeitig auch sicher, dass die Lösung technisch korrekt daherkommt – sofern man die wichtigsten Tipps und Tricks einhält.

Wenn man sich auf die 5 wichtigsten JavaScript Frameworks konzentriert (jQuery, ExtJS, Prototype, MooTools, YUI), kann man sagen, dass alle die folgenden Merkmale besitzen:

  • Ajax Support
  • Element Selektoren
  • DOM Durchwanderung
  • DOM Manipulation
  • Event Handling
  • JSON
  • Cross-Browser Kompatibilität

Welches Framework aber soll ich dann im eigenen Projekt verwenden?

Nach Auflistung der Stärken der einzelnen Libraries sollte es einfacher fallen sich für die am besten geeignete Library zu entscheiden:

  • jQuery beinhaltet nur einen kleinen Satz von User Experience (UX) -Verbesserungen; User Interface (UI) -Komponenten können nur durch die zusätzliche Einbindung des jQuery UI Frameworks bewerkstelligt werden
  • Protoype: Beinhaltet keine zusätzlichen UI-Komponenten oder UX-Verbesserungen. Diese können aber durch die Einbindung  des Frameworks Script.aculo.us hinzugefügt werden
  • Mootools beinhaltet ebenfalls keine UI-Controls, sondern nur in Verbindung mit MooTools.More
  • YUI und ExtJS beinhalten eine grosse Anzahl von vorgefertigten UI-Komponenten, sogenannten Widgets, die Out-of-the-Box verwendet werden können

Der Nachteil an den Komplettlösungen YUI und ExtJS ist, dass die Ressourcen sehr gross werden können und so einen Abstrich bei der Ladegeschwindigkeit im Browser hingenommen werden muss. Und das Customizing, also die individuelle Erweiterung von Komponenten, ist bei diesen beiden Lösungen komplexer als bei den anderen drei Frameworks.

Zusammenfassend kann zum Einsatzgebiet der einzelnen Frameworks gesagt werden:

  • jQuery und Prototype eignen sich hervorragend zur Erweiterung von grafischen Web-Oberflächen
  • ExtJS und YUI sind die beste Wahl, wenn applikatorische Lösungen gebaut werden
  • Mootools ist stark bei Animationen und grafischen Gestaltungen

Dass es aber auch durchaus sinnvoll sein kann, zwei unterschiedliche Frameworks in ein und derselben Lösung zu verwenden, haben wir beim Projekt Blacksocks gezeigt: Hier wird für die Administrationsoberfläche im CMS G3 ExtJS, auf der normalen Webseite aber jQuery verwendet.

Die genannten Frameworks bieten auch Versionen für mobile Plattformen. Diese beinhalten vorgefertigte UI-Komponenten, die das Verhalten von nativen Apps klonen.

Die wirtschaftlichen Aspekte beim Einsatz von JavaScript Frameworks sind auch vielfältig:

  • mehr Zeit für Kundenbedürfnisse, da Problematiken wie z.B. Crossbrowser-Kompatibilitäten eliminiert werden können
  • Konzentration aufs Wesentliche
  • Erleichterung in der Programmierung dank vielen modularen Out-of-the-Box Features
  • Wiederverwendung auf allen Ebenen, so z.B. im Mobile Bereich
  • hohe Qualität für Kundenlösung, da für jedes Bedürfnis ein Plugin oder Widget vorhanden ist
  • Innovation ohne Investitionen, da diese durch grosse Communities getrieben werden
  • schnelleres Time-To-Market

Was habt ihr für Erfahrungen mit JavaScript Frameworks gemacht? Kennt ihr noch weitere erwähnenswerte Frameworks? Lohnt es sich überhaupt als Entwickler Kenntnisse in mehr als einem oder zwei Frameworks zu haben, oder lohnt es sich Spezialisten für jede Sprache zu haben?

Weiterempfehlen

image description

Kommentieren

1 Kommentar

image description
  1. FJ | 18.02.2012 22:47

    Kennt ihr noch weitere erwähnenswerte Frameworks?
    Für mobile Geräte wäre noch http://jquerymobile.com/ und http://www.sencha.com/products/touch erwähnenswert.

    Lohnt es sich überhaupt als Entwickler Kenntnisse in mehr als einem oder zwei Frameworks zu haben, oder lohnt es sich Spezialisten für jede Sprache zu haben?
    Ich denke schon das es sich lohnt sich mit mehr als einem auseinander zu setzen. Nur schon um sich mehr know how anzusammeln und die Vor/Nachteile kennen zu lernen. Für mich persönlich macht es z.B. keinen Sinn für eine normale Website EXTJS zu benutzen. Wenn ich jedoch eine grosse Applikation in Aussicht habe, dann wäre man mit EXTJS sicher glücklicher. Aber das hast du ja oben schon ausführlich erklärt 🙂

Kommentar schreiben

Please copy the string N6LbFu to the field below: