Menü
Developer

JavaScript-Framework: DoneJS 3.0 bringt inkrementelles Rendering

Der Nachfolger von JavaScriptMVC erstellt durch das Aufteilen in statische und dynamische Inhalte Seiten, die schneller laden.

Von
vorlesen Drucken Kommentare lesen 10 Beiträge
JavaScript-Framework: DoneJS 3.0 bringt inkrementelles Rendering

Die Macher von DoneJS haben Version 3.0 des Open-Source-JavaScript-Frameworks herausgegeben. Die Software ist auf das Erstellen von Echtzeit-Webanwendungen sowie mobilen Apps mit JavaScript ausgelegt. Insgesamt blickt das Framework inzwischen auf eine zwölfjährige Historie zurück, da es der Nachfolger von JavaScriptMVC ist.

Die wohl wichtigsten Neuerung in DoneJS 3 ist der inkrementelle Renderprozess. Dazu trennt das Framework beim serverseitigen Rendern die statischen Teile der Anwendung von den dynamischen. Erstere schickt der Server direkt an das Endgerät, das somit die App beziehungsweise Seite schneller anzeigen kann, um sie dann mit den dynamischen Inhalten zu füttern, sobald der Server sie schickt.

Ein Vergleich der Darstellung einer mit DoneJS 2 (links) und DoneJS 3 (rechts)

Das clientseitige Framework CanJS ist Bestandteil von DoneJS. Bereits im vergangenen Sommer ist CanJS 5.0 erschienen und nun in das aktuelle Release von DonejS integriert. Es bietet mit can-debug unter andere Debugging-Utilities zum Untersuchen, wie sich die einzelnen Teile der Anwendung gegenseitig beeinflussen – insbesondere die Observables und DOM-Knoten von CanJS. Mit den Canjs DevTools lassen sich zudem unter anderem die ViewModels betrachten und bearbeiten.

CanJS gibt Einblick in das ViewModel.

(Bild: DoneJS)

DoneJS 3 hat darüber hinaus Version 2 von StealJS an Bord, die ebenfalls bereits im Sommer 2018 erschienen ist. StealJS ist eine Sammlung von Tools zum Verwalten von Abhängigkeiten sowie zum Bauen, Paketieren und Teilen von JavaScript-Anwendungen. StealJS 2 ermöglicht unter anderem das sogenannte Tree-Shaking zum Beseitigen von ungenutztem Code. Dazu untersucht die Software die import-Anweisungen, um nicht genutzten Code zu entfernen beziehungsweise gar nicht erst zu laden. Außerdem setzt Version 2 von StealJS auf native Promises und lagert das in 1.x enthaltene Promise-Polyfill in steal-with-promises.js aus. Wer es nach wie vor beispielsweise für den Internet Explorer benötigt, muss das script-Tag entsprechend anpassen.

Weitere Details lassen sich dem Blogbeitrag entnehmen. Der Sourcecode ist unter der MIT-Lizenz auf GitHub zu finden. Einsteiger können sich an dem Quick Start Guide orientieren. Die Versionsnummer von DoneJS mag Kenner des Vorgängers ein wenig irritieren, da das letzte verfügbare Release von JvaScriptMVC die Versionsnummer 3.3 trägt, aber bereits sechs Jahre alt ist. Das GitHub-Repository des alten Projekts existiert nach wie vor, ist aber seit einigen Jahren unverändert. (rme)