Prácticas recomendadas

Nota

Adobe recomienda el uso del Editor de SPA para proyectos que requieren una representación de cliente basada en el marco de aplicaciones de una sola página (por ejemplo, React). Más información.

La creación de una aplicación de AEM Mobile On-demand Services es diferente a la creación de una aplicación que se ejecuta directamente en el shell de Cordova (o PhoneGap). Los desarrolladores deben estar familiarizados con:

  • Los complementos que se admiten de forma predeterminada, así como los complementos específicos de AEM Mobile.
Nota

Para obtener información detallada sobre los complementos, consulte los siguientes recursos:

  • Las plantillas que utilizan la funcionalidad de complemento deben escribirse de tal manera que sigan siendo autorizadas en el navegador, sin que el puente de complemento esté presente.

    • Por ejemplo, asegúrese de esperar a la función deviceready antes de intentar acceder a la API de un complemento.

Directrices para desarrolladores de AEM

Las siguientes directrices ayudarán a los desarrolladores experimentados de AEM para sitios que deseen crear plantillas y componentes de aplicaciones móviles:

Estructurar plantillas de sitios AEM para fomentar la reutilización y la extensibilidad

  • Preferir varios archivos de secuencias de comandos de componentes sobre uno solo y monolítico

    • Se proporcionan una serie de puntos de extensión vacíos, como customheaderlibs.html y customfoterlibs.html, que permiten al desarrollador cambiar la plantilla de página y duplicar el menor código principal posible
    • Las plantillas se pueden ampliar y personalizar mediante el mecanismo sling:resourceSuperType de Sling
  • Preferir Sightly/HTL sobre JSP como idioma de plantilla

    • El uso de esto fomenta la separación del código del marcado, ofertas integradas en la protección XSS y tiene una sintaxis más familiar

Optimizar el rendimiento en el dispositivo

  • La secuencia de comandos y las hojas de estilo específicas del artículo deben incluirse en la carga útil del artículo, mediante la plantilla dps-article contentsync
  • Las hojas de estilo y las secuencias de comandos compartidas por más de un artículo deben incluirse en los recursos compartidos, mediante la plantilla dps-HTMLResources contentsync
  • No haga referencia a secuencias de comandos externas que bloqueen el procesamiento
Nota

Puede obtener más información sobre los scripts externos de bloqueo de procesamiento aquí.

Prefiere las bibliotecas JS y CSS de cliente específicas de la aplicación en lugar de las bibliotecas específicas de la web

  • Para evitar sobrecargas en bibliotecas como jQuery Mobile con el fin de gestionar una gran variedad de dispositivos y exploradores
  • Cuando una plantilla se está ejecutando en la vista web de una aplicación, tiene control sobre las plataformas y versiones que la aplicación va a admitir, así como el conocimiento de que estará presente la compatibilidad con JavaScript. Por ejemplo, prefiera Iónico (quizás solo CSS) sobre jQuery Mobile y la interfaz de usuario de Onsen en lugar de Bootstrap.
Nota

Para obtener más información sobre jQuery Mobile, haga clic aquí.

Prefiere las microbibliotecas en lugar de las pilas completas

  • Cada biblioteca de la que dependan los artículos ralentizará el tiempo necesario para que el contenido pase a la copa del dispositivo. Esta ralentización se agrava cuando se utiliza una nueva vista de web para procesar todos los artículos, por lo que cada biblioteca debe inicializarse de nuevo desde cero
  • Si los artículos no se crean como SPA (aplicaciones de una sola página), probablemente no necesite incluir una biblioteca de pilas completa como Angular
  • Prefiera bibliotecas más pequeñas y de un solo propósito para ayudar a agregar la interactividad que requiere su página, como Fastclick o Velocity.js

Minimizar el tamaño de la carga útil del artículo

  • Utilice los recursos más pequeños posibles que cubran eficazmente la ventanilla más grande que admita, con una resolución razonable
  • Utilice una herramienta como ImageOptim en las imágenes para eliminar cualquier exceso de metadatos

Cómo avanzar

Para obtener más información sobre las otras dos funciones y responsabilidades, consulte los recursos siguientes:

En esta página