Please enable JavaScript.
Coggle requires JavaScript to display documents.
Desarrollo de aplicaciones moviles - Coggle Diagram
Desarrollo de aplicaciones moviles
Aplicaciones nativas
Utiliza archivos ejecutables binarios que se descargan directamente al dispositivo y se almacenan localmente.
Se pueden instalar por parte del usuario o una empresa.
Generalmente estas aplicaciones son obtenidas de tiendas de aplicaciones (App Store, Play Store, entre otros).
Al ejecutarse la aplicación, se conecta directamente con el SO instalado en el dispositivo.
La aplicación puede acceder libremente a todas las APIs que el proveedor del SO ponga a disposición.
Para desarrollarse, se escribe su código fuente y utiliza recursos adicionales, posteriormente compila el código fuente para crear un ejecutable en formato binario que pueda empaquetarse junto al resto de recursos para estar lista para su uso.
Para su construcción y/o modificación se utilizan SDK (software developer kit) del SO móvil.
Su desventaja más crítica es la diversidad de herramientas, lenguajes, formatos y tiendas utilizadas para cada uno de los SO, debido a ello, provoca que el código escrito para una plataforma puede utilizarse exclusivamente en ella, no funcionando en otra.
Destaca por su desempeño y acceso de los dispositivos.
Interfaz de programación de aplicaciones (API)
Conjunto de definiciones y protocolos que se utiliza para desarrollar e integrar el software de las aplicaciones, permite que estos productos se comuniquen entre sí.
Tipos
API de bajo nivel
Permite que la aplicación pueda interactuar directamente con la pantalla táctil o el teclado para realizar acciones en el dispositivo.
API de alto nivel
Permite realizar procesos más complejos que las de bajo nivel, como por ejemplo navegar por internet, gestionar calendarios, conectarse a la nube, etc.
Herramienta GUI (Interfaz gráfica del usuario)
Conjunto de componentes para la interfaz de usuario, como botones, sliders, menús, barras, etc. Estos componentes son utilizados para representar la información y/o realizar funciones en un dispositivo generando una experiencia más fácil y divertida para el usuario.
Aplicaciones de móviles basadas en la Web
Aplicaciones desarrolladas para ser ejecutadas en los navegadores de los dispositivos.
Principalmente están escritas en HTML, CSS y Javascript.
Una de sus ventajas que brinda utilizar HTML5 son componentes de IU avanzados, acceso a múltiples tipos de medios, servicios de geoposicionamiento y disponibilidad offline.
Existen dos enfoques diferentes en las aplicaciones de este tipo: Preparar páginas HTML que se adapten a la pantalla del móvil o diseñar un sitio web especialmente para móviles (por ejemplo: m.facebook.com).
Las ventajas de las aplicaciones Web por sobre su competencia son el soporte multiplataforma y el bajo costo de su desarrollo.
La mayoría de proveedores móviles utilizan el motor de búsqueda de sus navegadores llamado WebKit.
Una de sus desventajas es que actualmente su funcionalidad es limitada y no pueden alcanzar un nivel de experiencia de usuario como el de las APIs nativas (por ejemplo. si se requiere una IU con demasiadas opciones en un juego).
Permite controlar totalmente la distribución de la aplicación y sus actualizaciones.
Una gran ventaja es la visibilidad que tiene ya que en los resultados de los buscadores, permite en muchos casos llegar a una mayor audiencia que, por ejemplo, APIs nativas que se encuentran en una tienda de aplicaciones.
Aplicaciones híbridas
Combina el desarrollo nativo con la tecnología web, los desarrolladores escriben gran parte de su aplicación en tecnologías web para múltiples plataforma y mantienen el acceso directo a APIs nativas cuando lo necesitan.
Al adoptar este enfoque ofrece un equilibrio, que en la mayoría de situaciones, constituye de los mejor de las APIs nativas y desarrolladas en la Web.
Permite gracias a la ventaja de contar con el enfoque web comparado a únicamente adoptar una enfoque de desarrollo como las APIs nativas, sus aplicaciones tengan más probabilidades de no quedar obsoletas ya que, según estudios, HTML5 muy probablemente se convierta en la tecnología por defecto en el desarrollo de aplicaciones.