Als APEX-Entwickler stehe ich immer mehr vor der Herausforderung, Applikationen für mobile Endgeräte anzupassen und diese so zu optimieren, dass sie auf Desktops, aber auch auf mobilen Endgeräten wie Tablets oder Smartphones bequem nutzbar sind. Doch was ist der beste Weg hierfür? Reichen die responsiven Eigenschaften des Universal Themes aus? Oder sollte man lieber für mobile Geräte eine Anwendung mit APEX mobile und für den Desktop eine Anwendung im Universal Theme entwickeln? Nach welchen Kriterien entscheidet man das?

Universal Theme

Das Universal Theme bietet bereits zahlreiche Komponenten an, welche sowohl auf dem Desktop-PC als auch auf mobilen Endgeräten genutzt werden kann. Zudem lassen sich mit dem Theme Roller farbliche Anpassungen an das Corporate Design des Unternehmens in kurzer Zeit realisieren. Hier ist vor allem die Unterstützung der gängigen Web-Standards CSS3 und HTML5 entscheidend. Verstärkt durch die Responsive-Eigenschaft des Universal Themes lässt sich eine für den Desktop entwickelte Anwendung ebenfalls weitestgehend komfortabel auf dem Smartphone oder Tablet nutzen. So passen sich beispielsweise Schrift und Navigation der Bildschirmgröße an. Weiterhin richten sich viele weitere der out-of-the-box-Komponenten nach der Bildschirmgröße des Endgerätes aus, sodass zusätzlich die Regionen innerhalb des Grid-Layouts in der Anordnung in eine „neue“ Zeile springen. Einige Komponenten wie z.B. die modalen Seiten werden zwar auch auf mobilen Geräten unterstützt und problemlos angezeigt, jedoch geben sie sich nicht immer als solche zu erkennen. Andere Komponenten werden auf mobilen Endgeräten wiederrum nur mangelhaft oder gar nicht unterstützt.

Die Zukunft des Universal Themes

Als zentrale Neuerung in Oracle Application Express 5.1 wurde das Interactive Grid für das Universal Theme eingeführt. Das Interactive Grid ist eine neue Berichtsregion, die einerseits die Features des Tabular Forms und des Interactive Reports kombiniert und andererseits neue Funktionen ergänzt. Dieser neue Regionstyp unterstützt die Bearbeitung mehrerer Zeilen auf einer Seite sowie die Verarbeitung von JSON-Code. In der Community wird das Interactive Grid oft als Ablösung des Tabular Forms betrachtet, wobei das Interactive Grid bessere Integrationsmöglichkeiten bieten soll und zusätzlich nicht auf eine Region pro Seite beschränkt sein wird. Das Interactive Grid lässt sich umfangreich anpassen und bietet Filter und Chart-Funktionen, die viele bereits von dem Interactive Report kennen.  Getätigte Änderungen finden zunächst im Browser statt und können vor dem Submit ohne Probleme Rückgängig gemacht werden. Jedoch ist das Interactive Grid zunächst nur für Desktopgeräte relevant, da auf mobilen Endgeräten diese Region ähnlich gut nutzbar ist, wie ein Interactive Report oder Tabular Form. Erste Tests im Early Adopter haben bereits gezeigt, dass es hier dem Viewport an ausreichender Breite mangelt, da die Spalten auf einem Smartphone nicht ausreichend Platz nebeneinander finden.
Als nächste große Neuerung werden Oracle JET Charts in APEX integriert. Diese neue Charting Engine bietet weitaus mehr Konfigurationsmöglichkeiten bei einer gleichzeitig besseren Zugänglichkeit und einer besseren Unterstützung des Responsive Web Designs. Mittels JavaScript APIs lassen sich zusätzlich zu der deklarativen Konfiguration weitere Anpassungen durchführen. Zunächst werden jedoch in APEX 5.1 nicht alle Oracle JET Charts unterstützt, sondern lediglich eine Auswahl an gängigen Diagrammtypen. Für die Zukunft ist außerdem geplant, dass das Universal Theme Touch Events als Trigger für Dynamic Actions deklarativ unterstützt. Aktuell ist dies ausschließlich APEX mobile vorbehalten. Zusätzlich lassen sich Template Options Live testen, um mithilfe einer Live-Vorschau die Auswirkungen der Änderungen genau zu beobachten. APEX Anwendung auf dem Desktop

APEX mobile

Das mobile Theme von APEX trat erstmals 2012 mit der Version 4.2 in Erscheinung. Unter Verwendung von jQuery mobile lassen sich Applikationen erstellen, welche optimal auf mobile Endgeräte abgestimmt sind. Hierbei liegt der Fokus vor allen Dingen auf der Performance der Anwendung, welche durch eine geringere Gewichtigkeit von HTML, CSS und JavaScript erhöht werden kann. Das mobile Theme verfügt über zusätzliche Features bzw. über zusätzliche Komponenten, gleichwohl ist der Gesamtumfang an Standard-Komponenten gegenüber dem Universal Theme deutlich geringer.

Die Zukunft von APEX mobile

APEX mobile erhält im Zuge der neuen Version 5.1 ebenfalls die Integration des Theme Rollers. Somit lässt sich das Aussehen des mobilen Interfaces deklarativ anpassen. Bis Dato war zwar die Nutzung des externen jQuery Mobile Theme Rollers möglich, jedoch war er nicht direkt integriert. Die neue Charting Engine Oracle JET wird ebenfalls von APEX mobile unterstützt und problemlos deklarativ genutzt werden. Die Vorzüge der neuen Charting Engine kommen somit auch dem separaten mobilen Interface zugute. Da die Weiterentwicklung von jQuery Mobile zur Version 1.5 nach einer längeren Pause noch in Arbeit ist, ist erst in späteren Updates wie APEX 5.2 mit der Einbindung dieser neuen Version in APEX mobile zu rechnen.
APEX Mobile

Fazit

Eine Patentlösung lässt sich bei der Wahl zwischen Universal Theme und APEX mobile nicht empfehlen. Für jeden Anwendungsfall muss betrachtet werden, welche Geräte im Fokus sind und welche Komponenten von APEX benötigt werden, da hier Abweichungen vorhanden sind. Wenn beispielsweise ein Interactive Report zwingend benötigt wird, so ist dies ein gravierender Faktor bei der Entscheidung zwischen den beiden Themes. Das Universal Theme sollte im Allgemeinen verwendet werden, wenn sowohl Desktop als auch mobile Geräte für den Nutzer entscheidend sind und der Aufwand für die Entwicklung für verschiedene Geräte möglichst geringgehalten werden soll. Außerdem empfiehlt sich das Universal Theme, wenn die Anwendung möglichst anschaulich gestaltet sein soll. Wenn jedoch mobile Geräte besonders optimiert genutzt werden sollen und die Performance sowie die Funktionalität im Fokus stehen, empfiehlt sich APEX mobile. Der Seitenaufbau ist bis zu einer Sekunde schneller und das Look&Feel macht einen nativeren Eindruck, da jQuery mobile weit verbreitet ist. Jedoch ist APEX mobile zwangsläufig mit einem gewissen Mehraufwand verbunden, da zwei Anwendungen entwickelt werden müssen und ggf. fehlende Features in der jeweiligen Anwendung ergänzt werden müssen.

Die Alternative

Eine Entscheidung für die Vorgehensweise bei der Entwicklung ist immer unter Beachtung des speziellen Use-Cases zu treffen. Zusätzlich zur Entscheidung UT oder APEX mobile kann auch die Verwendung beider Themes in Erwägung gezogen werden. So macht es durchaus Sinn eine zunächst für den Desktop entwickelte Anwendung auch mobile ready zu machen. Reichen hierfür die Eigenschaften des Universal Themes aus Gründen nicht unterstützter Komponenten nicht aus, so können einzelne Seiten mit dem mobile Theme entwickelt werden. Hier beschränkt sich der Aufwand lediglich auf das User Interface, da die notwendigen Prozesse, welche im Hintergrund tätig sind, bereits existieren dürften. Zudem sollte darauf geachtet werden, JavaScript-arme Seiten zu erstellen und keine Überladung an Dynamic Actions zu erzeugen, wenn dies nicht zwingend notwendig ist. Hier sollte man sich darauf beschränken, nur die für eine mobile Nutzung vorgesehenen Seiten „nachzubauen“.

Jetzt teilen auf:

Jetzt kommentieren