Hier werden Javascript Frameworks auf die Tauglichkeit untersucht, JSF zu ersetzen.

Features#

-JQueryJQuery UIAngularJSAngularVueReactMeteorPolymerEmberBackboneDojoExtJSWakandaUnderscore
PurposeJS FunctionsWidgets??JS Synchronization?????????
ProgrammierspracheJavascriptJavascriptJavascriptTypescriptJavascript?????????
HTML generieren$("<tag>")$("<tag>")??-?????????
HTML laden$.fn.load$.fn.load??-?????????
Komponente definierenHTML Datei, $.extend$.widget??new Vue?????????
Komponente instantiieren$.fn.load$.fn.<widget>??-?????????
Komponente referenzierenCSS Selectorwidget var??app var?????????
Komponenten aggregieren$.fn.append, ...$.widget??-?????????
Value anbinden$.fn.val, $.fn.on$.fn.<widget>(...)??EL, Attribute, If, Iteration?????????
Client/Server-Kommunikation$.ajax$.ajax????????????
Reactive Programming--??-?????????

Zusammenfassung#

FrameworkZusammenfassung
JQueryJQuery ist das wohl älteste und am weitesten verbreitete Basis-Framework. Es bietet Browser-Unabhängigkeit, Definition von Funktionen und Makros. JQuery kann und wird weiterhin parallel zu anderen Frameworks eingesetzt, bietet allerdings keine Vollautomatisierung von Templating, Synchronisierung, HTML-Generierung oder Single-Site-Application. Insbesondere bietet JQuery einen vereinheitlichten AJAX-Zugriff, der das Laden von JS, CSS, HTML und JSON vereinfacht, sowie die REST-Kommunikation ermöglicht
JQuery UIJQuery UI ist eine Erweiterung von JQuery, die zwei Dinge liefert: Die Widget API mit der JS Komponenten definiert werden können, einige mitgelieferte Basiskomponenten. JQuery UI bietet den größten Markt an freien Komponneten, wie etwa Dropdown, Datepicker, Drag-and-Drop und anderen Extensions
Underscore JSUnderscore ist die neuere Konkurrenzveranstaltung zu JQuery, konnte aber nie wirklich aufholen. Letzten Endes konnte und kann man in JQuery durch $.extend und $.fn.extend jede Funktion erweitern, sodass es keinen Sinn macht auf ein anderes Basis-Framework umzusteigen oder es zusätzlich hinzuzunehmen.