sábado, 22 de octubre de 2016

Estructura de Apache Cordova

Visión de conjunto

Apache Cordova es un marco de desarrollo móvil de código abierto. Se permite el uso de tecnologías web estándar - HTML5, CSS3 y JavaScript para el desarrollo multiplataforma. Las aplicaciones se ejecutan dentro de envoltorios específicos para cada plataforma, y ​​se basan en los enlaces de la API compatibles con los estándares de acceso a las capacidades de cada dispositivo, tales como sensores, datos, estado de la red, etc.

Usar Apache Cordova si es:

un desarrollador móvil y quieren extender una aplicación a través de más de una plataforma, sin tener que volver a ponerlo en práctica con el conjunto de herramienta de lenguaje y de cada plataforma.

un desarrollador web y desean implementar una aplicación web que está acondicionado para la venta en diferentes portales de la tienda de aplicaciones.

un desarrollador móvil interesados ​​en mezclar los componentes de aplicaciones nativas con un WebView (ventana del navegador especial) que se puede acceder a las API a nivel de dispositivo, o si se quiere desarrollar una interfaz de complementos entre los componentes nativos y WebView.

Arquitectura
Hay varios componentes a una aplicación de Córdoba. El siguiente diagrama muestra una vista de alto nivel de la arquitectura de la aplicación Cordova.

Visión de conjunto
Apache Cordova es un marco de desarrollo móvil de código abierto. Se permite el uso de tecnologías web estándar - HTML5, CSS3 y JavaScript para el desarrollo multiplataforma. Las aplicaciones se ejecutan dentro de envoltorios específicos para cada plataforma, y ​​se basan en los enlaces de la API compatibles con los estándares de acceso a las capacidades de cada dispositivo, tales como sensores, datos, estado de la red, etc.

Usar Apache Cordova si es:

un desarrollador móvil y quieren extender una aplicación a través de más de una plataforma, sin tener que volver a ponerlo en práctica con el conjunto de herramienta de lenguaje y de cada plataforma.

un desarrollador web y desean implementar una aplicación web que está acondicionado para la venta en diferentes portales de la tienda de aplicaciones.

un desarrollador móvil interesados ​​en mezclar los componentes de aplicaciones nativas con un WebView (ventana del navegador especial) que se puede acceder a las API a nivel de dispositivo, o si se quiere desarrollar una interfaz de complementos entre los componentes nativos y WebView.

Arquitectura

Hay varios componentes a una aplicación de Córdoba. El siguiente diagrama muestra una vista de alto nivel de la arquitectura de la aplicación Cordova.



WebView

La vista web habilitado para Córdoba puede ofrecer la aplicación con la totalidad de su interfaz de usuario. En algunas plataformas, sino que también puede ser un componente dentro de una aplicación más grande, híbrido que mezcla la WebView con los componentes de aplicaciones nativas. (Ver incrustación WebViews para más detalles.)

Aplicación Web

Esta es la parte en la que reside el código de aplicación. La propia aplicación se implementa como una página web, por defecto un archivo local denominado index.html, que hace referencia a CSS, JavaScript, imágenes, archivos multimedia, u otros recursos son necesarios para que se ejecute. La aplicación se ejecuta en un WebView dentro de la envoltura de aplicación nativa, que se distribuye a las tiendas de aplicaciones.

Este recipiente tiene un archivo muy importante - config.xml que proporciona información sobre la aplicación y especifica los parámetros que afectan a la forma en que funciona, por ejemplo, si responde a los cambios de orientación.

plugins

Los plugins son una parte integral del ecosistema Córdoba. Proporcionan una interfaz para Cordova y componentes nativos para comunicarse entre sí y los enlaces a las API del dispositivo estándar. Esto permite invocar código nativo de JavaScript.

proyecto Apache Cordova mantiene un conjunto de plugins llamado el núcleo plugins. Estos complementos del núcleo proporcionan a su aplicación para acceder a las capacidades del dispositivo, tales como la batería, cámara, contactos, etc.

Además de los complementos del núcleo, hay varios plugins de terceros que proporcionan fijaciones adicionales para características no necesariamente disponibles en todas las plataformas. Puede buscar plugins Cordova utilizando plugin de búsqueda o NGP. También puede desarrollar sus propios plugins, como se describe en la Guía de Programas para el Desarrollo. Plugins pueden ser necesarias, por ejemplo, para la comunicación entre Córdoba y componentes personalizados de nativos.

NOTA: Cuando se crea un proyecto de Córdoba que no tiene ningún tipo de plugins presentes. Este es el nuevo comportamiento predeterminado. Cualquier conector que desee, incluso los complementos del núcleo, se deben añadir de forma explícita.

Córdoba no proporciona ningún widget de interfaz de usuario o MV * marcos. Córdoba ofrece sólo el tiempo de ejecución en la que los que pueden ejecutar. Si desea utilizar los widgets de interfaz de usuario y / o un marco MV *, tendrá que seleccionar aquellos e incluirlos en su aplicación.

Las vías de desarrollo

Cordova le proporciona dos flujos de trabajo básicos para crear una aplicación móvil. Aunque generalmente se pueden utilizar cualquiera de flujo de trabajo para realizar la misma tarea, cada uno de ellos ofrecen ventajas:


  • Multiplataforma (CLI) de flujo de trabajo: Utilice este flujo de trabajo si desea que su aplicación se ejecute en tantos sistemas operativos móviles diferentes como sea posible, con poca necesidad de un desarrollo específico de la plataforma. Este flujo de trabajo de centros de todo el CLI de Córdoba. La CLI es una herramienta de alto nivel que le permite construir proyectos para muchas plataformas a la vez, abstraerse de gran parte de la funcionalidad de secuencias de comandos shell de nivel inferior. 
  • Las copias de la CLI un conjunto común de recursos web en subdirectorios para cada plataforma móvil, hace que los cambios de configuración necesarios para cada uno, se ejecuta scripts de creación para generar binarios de la aplicación. La CLI también proporciona una interfaz común para aplicar plugins para tu aplicación. Para empezar a seguir los pasos de la Creación de la primera aplicación de guía. A menos que tenga una necesidad de que el flujo de trabajo de la plataforma centrada, se recomienda el flujo de trabajo multi-plataforma.


flujo de trabajo centrado en la plataforma: Utilice este flujo de trabajo si desea centrarse en la construcción de una aplicación para una sola plataforma y tiene que ser capaz de modificar la misma en un nivel más bajo. Es necesario utilizar este enfoque, por ejemplo, si desea que su aplicación para mezclar los componentes nativos personalizados con componentes Cordova basadas en la Web, como se discutió en la incrustación WebViews. Como regla general, utilice este flujo de trabajo si es necesario modificar el proyecto dentro del SDK. Este flujo de trabajo se basa en un conjunto de secuencias de comandos shell de nivel inferior que se adaptan para cada plataforma compatible, y una utilidad Plugman independiente que le permite aplicar plugins. Aunque se puede usar este flujo de trabajo para crear aplicaciones multiplataforma, por lo general es más difícil debido a la falta de una herramienta de nivel más alto significa ciclos de compilación separadas y modificaciones del plugin para cada plataforma.

Cuando se empieza a cabo, puede ser más fácil de utilizar el flujo de trabajo multi-plataforma para crear una aplicación, como se describe en Creación de la primera guía de aplicación. A continuación, tiene la opción de cambiar a un flujo de trabajo centrado en la plataforma si necesita el mayor control del SDK proporciona.

NOTA: Una vez que se cambia de flujo de trabajo basada en CLI a uno centrado alrededor de los SDK específicas de la plataforma y herramientas de concha, no se puede volver atrás. La CLI mantiene un conjunto común de código fuente multiplataforma, que en cada generación se utiliza para escribir sobre el código fuente específica de la plataforma. Para conservar las modificaciones que haga a los activos específicos de la plataforma, es necesario cambiar a las herramientas de shell de la plataforma centrada, que ignoran el código fuente multiplataforma, y ​​en su lugar se basa en el código fuente específica de la plataforma.

No hay comentarios.:

Publicar un comentario