Ext JS

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Ext JS
ExtJs-Desktop.png
Basisdaten
Entwickler Jack Slocum, Brian Moeskau, Aaron Conran, Rich Waters
Aktuelle Version 6.2[1]
Betriebssystem plattformunabhängig
Programmier­sprache JavaScript
Kategorie Framework
Lizenz GPL und proprietär
deutschsprachig nein
sencha.com

Ext JS ist ein clientseitiges JavaScript- bzw. Ajax-Framework für interaktive Webanwendungen, das für Open-Source-Projekte unter der GPL, für andere Projekte unter kommerziellen Lizenzen erhältlich ist. In erster Linie bietet Ext JS eine umfangreiche Sammlung von Steuerelementen.

Ursprünglich war Ext JS eine Sammlung von Funktionserweiterungen für die Yahoo User Interface Library (YUI) unter dem Namen yui-ext. Aufgrund wachsenden Umfangs und steigender Popularität entwickelte sich daraus die unabhängige Bibliothek Ext JS.

In der Version 2.0 bot Ext JS unter anderem JavaScript-Erweiterungen und Klassen für Ajax-Unterstützung, zur Document Object Model-Manipulation sowie zur Ereignis-Programmierung.

Seit Version 3.0 bringt das Framework Unterstützung für REST, Ext.Direct (API zur direkten Einbindung serverseitiger Funktionen) sowie eine Adobe-Flash-basierte Chart Engine mit.

Am 14. Juni 2010 wurde angekündigt,[2] dass Ext JS mit JQTouch und Raphaël verschmilzt. Die drei Projekte werden auf der neuen gemeinsamen Plattform unter dem Namen „Sencha“ fortgeführt. Ext JS wurde als eigenständiges Projekt[3] auf der neu gestalteten Projekt-Webseite integriert.

Am 26. April 2011 wurde Sencha ExtJS 4.0[4] veröffentlicht und enthält unter anderem ein Class System, die Sandbox Unterstützung verhindert Konflikte mit anderen Libraries, MVC Application Architecture Unterstützung, Charting Package und verbesserte Grid Views. Das Framework ist nun mit über 4000 Unit Tests auf über 21 Browsern in den Modi quirks, standard und strict getestet.

Die Version 5.0 von ExtJS wurde am 2. Juni 2014 veröffentlicht. Es ermöglicht die Entwicklung von Desktop Apps auf Geräten mit Touch-Display. Apps mit Model-View-ViewModel-Architektur sollen ebenso wie responsive Anwendungen nun einfacher zu erstellen sein.[5] ExtJS 5 unterstützt alle modernen Browser: Safari 6+, Firefox, IE8+, Chrome und Opera 12+. Auf mobilen Geräten werden unterstützt: Safari unter iOS 6 und 7, Chrome unter Android 4.1+ und Geräte mit Touch-Display und Windows 8 (z. B. Surface) mit dem IE10+. Seit Version 5 können proprietäre Entwicklerlizenzen nur noch für mind. 5 Entwickler erstanden werden. Die Einzelplatzlizenzen sind entfallen.

Mit Version 6 wurden Ext JS und Sencha Touch zusammengeführt. Ein neues Theme wurde hinzugefügt und die Grids überarbeitet und einige Diagrammdarstellungen aktualisiert.[6] Seit Ext JS 6 verlangen die Entwickler, dass bei Nutzung einer GPL-Lizenz, diejenige Software, die Ext JS verwendet, nicht mehr nur unter GPL in irgendeiner Version, sondern genau unter GPL 3 lizenziert ist. Dadurch kann es zu rechtlichen Inkompatibilitäten kommen bzw. Ext JS kann so für ein Projekt unbenutzbar werden, selbst wenn dieses unter der GPL steht.[7][8]

Funktionen[Bearbeiten | Quelltext bearbeiten]

In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Abschnitt ist auf dem Stand von 2011, Versionen 5 und 6 fehlten völlig
Du kannst Wikipedia helfen, indem du sie recherchierst und einfügst.

Programmoberfläche (GUI)[Bearbeiten | Quelltext bearbeiten]

Das Ext-JS-Framework beinhaltet eine Sammlung aus verschiedenen Formular-Elementen:[9]

  • Text-Felder (einzeilig und mehrzeilig)
  • Datumsfelder mit Eingabehilfe in Form eines aufklappbaren Kalenders
  • Numerische Felder mit Schaltflächen für Inkrement und Dekrement
  • Listenfelder und Auswahlboxen (Combobox)
  • Optionsfeld (Radiobutton) und Kontrollkästchen (Checkbox)
  • HTML-Eingabebereiche

Außerdem stehen verschiedene vorgefertigte Elemente, auch Widgets genannt, zur Verfügung:

Viele dieser Elemente können direkt mittels Ajax-Technologie Daten empfangen und senden. Die Entwickler-Community entwickelt das Framework ständig weiter und stellt zusätzliche Erweiterungen[10] bereit.

Anwendungsunterstützung[Bearbeiten | Quelltext bearbeiten]

  • modale Dialog-Fenster
  • interaktive Eingabevalidierung mit Rückmeldung
  • Sitzungs- und Zustandsverwaltung
  • unterschiedliche standardisierte Datenformate wie XML und JSON

Support (Unterstützung)[Bearbeiten | Quelltext bearbeiten]

Für aktuelle Versionen ist kostenloser Support in Foren oder kostenpflichtig über Supportverträge[11] erhältlich.

Unterstützung für Ext JS 3 kann über das ausschließlich englischsprachige Forum[12] bezogen werden. Monatliche Fehlerkorrekturen, sogenannte Bugfixes, werden nur Nutzern mit kostenpflichtigen Support-Verträgen angeboten[13].

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Release Notes for Ext JS 6.2.
  2. http://www.sencha.com/blog/2010/06/14/ext-js-jqtouch-raphael-sencha/
  3. http://www.sencha.com/products/js/
  4. http://www.sencha.com/blog/ext-js-4-final/
  5. http://www.heise.de/developer/meldung/Vieles-neu-mit-Sencha-Ext-JS-5-2214962.html
  6. https://docs.sencha.com/extjs/6.0/whats_new/whats_new.html
  7. http://www.gnu.org/licenses/gpl-faq.html
  8. https://www.sencha.com/legal/GPL/
  9. http://www.extjs.com/learn/Ext_2_Overview
  10. http://www.extjs.com/learn/Ext_Extensions#Ext_3.0_Extensions
  11. http://www.extjs.com/store/extjs/#support-table
  12. http://www.extjs.com/forum/forumdisplay.php?f=39 Support-Forum
  13. http://www.extjs.com/products/extjs/download.php Patch releases are released on a monthly basis and are available to support subscribers. Thank you for supporting the Ext Team.

Weblinks[Bearbeiten | Quelltext bearbeiten]