Best Practices

HINWEIS

Adobe empfiehlt die Verwendung des SPA-Editors für Projekte, für die ein frameworkbasiertes clientseitiges Rendering für einzelne Seiten (z. B. React) erforderlich ist. Weitere Informationen

Das Erstellen einer AEM Mobile On-demand Services-App unterscheidet sich vom Erstellen einer App, die direkt in der Cordova- (oder PhoneGap-)Shell ausgeführt wird. Die Entwickler sollten mit folgenden Themen vertraut sein:

  • Plug-ins, die standardmäßig unterstützt werden, sowie die AEM Mobile-spezifischen Plug-ins.
HINWEIS

Ausführliche Informationen zu Plug-ins finden Sie in den folgenden Ressourcen:

  • Vorlagen, die Plug-in-Funktionen verwenden, sollten so geschrieben werden, dass sie im Browser noch autorierbar sind, ohne dass die Plug-in-Verbindung vorhanden ist.

    • Warten Sie beispielsweise auf die Funktion device , bevor Sie versuchen, auf die API eines Plug-ins zuzugreifen.

Richtlinien für AEM Entwickler

Die folgenden Richtlinien helfen erfahrenen AEM-Entwicklern für Sites, die mobile App-Vorlagen und -Komponenten erstellen möchten:

Strukturieren AEM Sites-Vorlagen zur Förderung der Wiederverwendung und Erweiterbarkeit

  • Mehrere Komponentenskriptdateien über eine einzige monolithische

    • Es werden eine Reihe leerer Erweiterungspunkte bereitgestellt, z. B. customheaderlibs.html und customfooterlibs.html, die es dem Entwickler ermöglichen, die Seitenvorlage zu ändern und so wenig Kerncode wie möglich zu duplizieren
    • Vorlagen können dann über den Sling-Mechanismus sling:resourceSuperType erweitert und angepasst werden
  • Sightly/HTL über JSP als Vorlagensprache bevorzugen

    • Dadurch wird eine Trennung von Code und Markup gefördert, bietet integrierten XSS-Schutz und verfügt über eine vertrautere Syntax.

Optimieren der Leistung auf dem Gerät

  • Artikelspezifische Skript- und Stylesheets sollten in die Artikelnutzlast aufgenommen werden, indem die Vorlage contentsync des Artikels dps-article verwendet wird.
  • Skript- und Stylesheets, die von mehr als einem Artikel gemeinsam verwendet werden, sollten über die Vorlage "dps-HTMLResources contentsync"in freigegebenen Ressourcen enthalten sein
  • Referenzieren Sie keine externen Skripte, die Render-Blocking sind
HINWEIS

Ausführlichere Informationen zum Rendern von blockierenden externen Skripten finden Sie hier hier.

App-spezifische clientseitige JS- und CSS-Bibliotheken im Vergleich zu webspezifischen

  • So vermeiden Sie Mehraufwand in Bibliotheken wie jQuery Mobile für die Verarbeitung einer großen Bandbreite von Geräten und Browsern
  • Wenn eine Vorlage in der Webansicht einer App ausgeführt wird, haben Sie die Kontrolle über die Plattformen und Versionen, die von der App unterstützt werden, sowie über das Wissen, dass JavaScript-Unterstützung vorhanden sein wird. Nehmen wir beispielsweise an, dass Sie Ionic (vielleicht nur CSS) gegenüber jQuery Mobile und Onsen UI vorziehen.
HINWEIS

Um mehr über jQuery Mobile zu erfahren, klicken Sie hier.

Mikrobibliotheken über Vollstapel bevorzugen

  • Die Zeit, die benötigt wird, um Ihren Inhalt auf das Glas des Geräts zu bringen, wird durch jede Bibliothek, von der Ihre Artikel abhängen, verlangsamt. Diese Verlangsamung wird verstärkt, wenn eine neue Webansicht zum Rendern jedes Artikels verwendet wird. Daher muss jede Bibliothek von Grund auf neu initialisiert werden
  • Wenn Ihre Artikel nicht als SPA (Einzelseiten-Apps) erstellt wurden, müssen Sie wahrscheinlich keine vollständige Stapelbibliothek wie Angular einschließen.
  • Verwenden Sie kleinere eindimensionale Bibliotheken, um die für Ihre Seite erforderliche Interaktivität hinzuzufügen, z. B. Fastclick oder Velocity.js

Minimieren der Artikelnutzlast

  • Verwenden Sie die kleinstmöglichen Assets, die den größten von Ihnen unterstützten Viewport effektiv abdecken können, und zwar bei einer angemessenen Auflösung.
  • Verwenden Sie ein Tool wie ImageOptim auf Ihren Bildern, um überschüssige Metadaten zu entfernen.

Erste Schritte

Weitere Informationen zu den beiden anderen Rollen und Zuständigkeiten finden Sie in den folgenden Ressourcen:

Auf dieser Seite