Web Components,ja. Darüber sprechen wir seit Jahren. 2012 mutmaßten wir in einigen Beiträgen die bevorstehende Standardisierung. Tatsächlich ist es auch heute am Tag noch nicht so weit. Es gibt allerdings etliche vielversprechende Ansätze und technische Lösungen. Und anstatt den Entwicklern da draußen weiterhin zuzumuten, sich ihre Informationen an allen Ecken und Enden des Web zusammensuchen zu müssen, entschieden sich einige maßgebliche Mitglieder der Web Components Community, darunter Mitarbeiter von Google und Mozilla, eine zentrale Plattform zu schaffen. Diese zentrale Plattform sollte Grundlagen und Best Practices an einer Stelle zugänglich machen. Jetzt gibt es sie und sie hört auf den Namen WebComponents.Org.
Warum Web Components die Zukunft des Web sind
Sie haben von Web Components noch nichts gehört oder inzwischen schon wieder vergessen, worum es dabei geht? Kein Problem, wir schicken eine ganz kurze Einführung vorweg.
Die Idee der Web Components erwuchs aus der Problematik, auf Websites wirklich echte Anwendungslogik zur Ausführung bringen zu wollen. Solange ein Entwickler die volle Hoheit über das hat, was auf einer Website passiert, ist das mit JavaScript schon länger möglich. Wenn aber mehrere Anwendungshappen, z.B. in Form von Widgets unterschiedlicher Entwickler funktionieren sollen, wird es schwierig.
Denn bislang lässt sich eine Website nicht aus voneinander völlig unabhängigen Modulen zusammenbauen, zumindest nicht ohne das Risiko, dass sich die verschiedenen Codeteile gegenseitig ins Gehege kommen.
So sehen die wichtigsten Bestandteile des Arbeitspapiers zu Web Components die Einführung von HTML Imports, Custom Elements und des Shadow DOM vor. HTML Imports erlauben die Einbindung externen HTMLs, etwa im Header. Custom Elements erlauben die Erstellung eigener Tags in der gleichen Systematik wie native HTML Elemente und das Shadow DOM sorgt dafür, dass Anwendungsbereiche nicht über das DOM sichtbar in den Zugriff genommen werden können.
Um die wichtigsten Teile der geplanten Spezifikation bereits zum jetzigen Zeitpunkt in Betrieb nehmen zu können, entwickelten Teams der den Browsermarkt dominierenden Hersteller Google und Mozilla eigene Lösungen. Die bekanntesten dürften X-Tags von Mozilla und Polymer von Google sein. Beide konzentrieren sich auf Custom Elements.
X-Tags haben wir Ihnen bei Dr. Web bereits in diesem und diesem Beitrag näher vorgestellt. Ebenfalls von Google stammt AngularJS, dass neben den Custom Elements auch Dynamic Views abgebildet werden. AngularJS stellten wir Ihnen in diesem Beitrag vor.
Prinzipiell sind alle Projekte so angelegt, dass sie sich schrittweise selber überflüssig machen. Polymer etwa prüft zur Laufzeit, wieviel Web Component der aufrufende Browser selber schon kann und kümmert sich nur noch um den Rest.
WebComponents.org: Alles zum Thema unter einem Dach
Die neue Website WebComponents.org war zunächst als eine Art Wiki für die Community-Mitglieder geplant, entwickelte sich aber aufgrund des Elans einzelner Mitglieder zu einer schicken Website, die den jeweiligen Diskussions- und Entwicklungsstand des Projekts widerspiegeln soll.
Dabei erreicht man von WebComponents.org aus sämtliche in Arbeit befindlichen Standardisierungsvorschläge. Eine Darstellung von Best Practices ermuntert Entwickler, bereits jetzt auf den noch langsam fahrenden Zug aufzuspringen. Eine Reihe von Grundlagenartikeln erklärt praktische Stolperfallen oder zeigt, wie man etwa mit Polymer konkret arbeitet oder Web Components zugänglich gestaltet. Rund 20 Artikel schrieben die Betreiber bereits, jeder verdient es, gelesen zu werden.
In der Sektion Presentations finden sich Slideshows und Videos von Vorträgen rund um Web Components zu verschiedenen Anlässen, etwa der letzten Google I/O. Unter Resources finden sich die teilweise bereits weiter oben genannten Projekte zur Erstellung von Custom Elements. In der Rubrik Sandbox sollen konkrete Vorschläge beschrieben werden. Hier ist noch viel Luft nach oben…
Obschon gerade erst gestartet, ist WebComponents.org bereits jetzt mit so viel Informationen befüllt, dass es einem schwerlich zu schnell langweilig werden dürfte. Wer einen extrem soliden, fundierten Ein- und Aufstieg in das Thema Web Components sucht, der kommt an dieser Plattform nicht vorbei.
Links zum Beitrag
- WebComponents.org | Alles rund um Web Components
- X-Tags | Mozilla
- Polymer | Google
- AngularJS erweitert HTML um Anwendungslogik und Web Components | Dr. Web Magazin
- Mozilla X-Tag: HTML-Elemente selbst definiert | Dr. Web Magazin
- Jetzt einsatzbereit: Mozillas X-Tags sollen das Web-Development beschleunigen | Dr. Web Magazin