JavaScript: Ember 2.7 und Beta von Ember 2.8 erschienen
Die nun aktuelle Version 2.7 hat lediglich eine nützliche Hilfsfunktion für Arrays und Enumerations bekommen, aber das als nächste LTS vorgesehene Ember 2.8 führt mit Engines logische Anwendungscontainer ein.
Die Macher des Webframeworks Ember haben mit Version 2.7 das routinemäßig für Juli geplante Update veröffentlicht. Neben den üblichen Bugfixes und Optimierungen enthält es lediglich eine markante Änderung: Enumerables und Arrays bekommen eine uniqBy-Funktion, die den uniq-Aufruf erweitert. Das Ergebnis ist jeweils ein neuer Enumerable-Typ beziehungsweise ein neues Array, das nur die einzigartigen Werte auf Basis des gewünschten Wertes enthält:
var palette = [{farbe: 'rot'}, {farbe: 'blau'}, {farbe: 'rot'},
{farbe: 'gruen'}, {farbe: 'blau'}];
palette.uniqBy('farbe') // {farbe: 'rot'}, {farbe: 'blau'}, {farbe: 'gruen'}
Die Vorschau auf die kommende Version 2.8 ist in zweierlei Hinsicht interessanter. Der organisatorische Grund ist, dass Ember 2.8 der zweite LTS-Release (Long Term Support) nach dem im April erschienenen Ember 2.4.5 sein wird. Die langfristige Unterstützung bedeutet, dass das Team für die nächsten sechs Releasezyklen kritische Bugfixes und für die nächsten zehn Zyklen Sicherheitsupdates bereitstellt. Ein Zyklus dauert bei Ember planmäßig sechs Wochen. Der Start der LTS-Version ist für den kommenden Zyklus Mitte August vorgesehen; zum LTS-Release wird Ember 2.8 im darauffolgenden Release, der für Ende September geplant ist.
Logische Anwendungen unter einem Dach
Die wichtigste technische Neuerung, die in die Beta von Ember 2.8 erstmals Einzug hält, ist das Konzept der sogenannten Engines zur Gliederung von Anwendungen in mehrere logische Teile. Die Motivation dahinter ist, dass unterschiedliche Teams jeweils logische Applikationen erstellen, die unter dem Dach einer Host-Anwendung laufen. Die einzelnen Engines haben ihre eigene abgeschlossene Funktionsweise und können Add-ons und eigene Komponenten enthalten. Zusätzlich stellt der Host weitere Funktionen zur Verfügung und verbindet die logischen Applikationen miteinander und mit der Umgebung. Entwickler können Engines isoliert vom Rest der Anwendung in Ember CLI erstellen. Der Hauptunterschied zwischen Engines und Applikationen ist, dass Erstere weder alleine starten noch den Ember-Router kontrollieren.
Zur Umsetzung dient das ember-engines-Add-on, das derzeit noch als experimentell gekennzeichnet ist. Weitere Details stehen im Blogbeitrag. Sowohl die stabile 2.7-Version als auch die Beta von Ember 2.8 stehen auf der Builds-Seite zum Herunterladen bereit. (rme)