Vorstellung des Frameworks ExtJS Nikolai Fischer Überblick • • • • • Clientseitiges JavaScript Framework Entwickelt von Sencha Inc. Aktuelle Version 4.1.1a Weitere Versionen in Entwicklung Für Open Source Projekte unter General Public Licence verfügbar Entstehung • Seit 2006 Entwicklung als Erweiterung der Yahoo! User Interface Library • Ab 2oo7 eigenständiges Framework unter dem Namen ExtJS Funktionalitäten • Interaktive Webanwendungen und RIAs (Rich Internet Applications) • Ajax, DHtml, DOM Manipulation • Kann zusammen mit anderen Frameworks wie JQuery oder Prototype benutzt werden • Mit den meisten Browsern kompatibel • Wird oft dazu verwendet ein Desktop-ähnliches Look and Feel für Webanwendungen zu erschaffen. Wieso ExtJS ? • Große Auswahl an fertigen UI Widgets (Bäume, Menüs etc) • Modernes Design der Komponenten • Große Community (mehrere Millionen) mit eigenen user extensions des Frameworks • Viele CSS Themes sind frei verfügbar und leicht einbindbar. Dokumentation • Große Interaktive API http://docs.sencha.com/ext-js/4-0/ komplett mit ExtJS implementiert • Viele Beispiele auf der offiziellen Homepage • Bücher über das Framework sind erhältlich Komponenten • • • • • • Trees, Listen Dialogboxen Menüs, Buttons, toolbars Grids Drag and Drop Etc. Listen Tree Fields und Combo-Boxen Besonderheiten • Objektorientiert mit Vererbung etc. • Voller Keyboard / Maus Support • Jede Klasse hat „Configs“ und „Properties“ - Configs können zur Laufzeit geändert werden. - Properties bleiben von der Erschaffung an bestehen. Daten • Speicherung von Daten in Models oder in Stores (meist als JSON oder XML) • Für die meisten Anwendungen sind bereits Stores vordefiniert • Stores unterstützen Sortieren, Gruppieren usw. • UI Komponenten kann ein Store als Attribut mitgegeben werden, wodurch sie ihre Daten beziehen können Beispiele • Einfache Checkbox • Ladeanzeige • Kontextmenü • Einfacher CSS Wechsel Ausblick • ExtGWT: Erweiterung des Google Web Toolkits um ExtJS Komponenten • ExtJS nicht auf vielen Webseiten, da kommerzielle Nutzung teuer (600 $ pro Entwickler Lizenz) Ausblick Ausblick ExtJS Webseiten • Welt.de • Abendblatt.de • Warnerbros.com