Android es un sistema operativo basado en Linux para dispositivos móviles como teléfonos inteligentes y tablets. Existen tres tipos principales de aplicaciones móviles: nativas, web e híbridas. Las aplicaciones nativas tienen acceso total a las funciones del dispositivo pero solo funcionan en un sistema operativo, mientras que las aplicaciones web y híbridas son multiplataforma pero tienen menos acceso a las funciones del dispositivo.
"Explorando la Pintura Costumbrista en la República Dominicana con E. Vidal"
app
1. UNIVERSIDAD LAICA ELOY ALFARO DE MANABI EXTENSION EN
“EL CARMEN”
INGENIERIA EN SISTEMAS
NOMBRE:
Franco Homero Vélez Dueñas
TUTOR:
Ing. SaedReasco
CURSO:
5TO “B”
2. Android
Es un sistema operativo basado en Linux para dispositivos móviles, comoteléfonos
inteligentes y tablets. Fue desarrollado inicialmente por Android Inc., unafirma
comprada por Google en el 2005. Es el principal producto de la
Open Handset Alliance, un conglomerado de fabricantes y desarrolladores de
hardware, software yoperadores de servicio.Las unidades vendidas de teléfonos
inteligentes con Android se ubican en el primerpuesto en los Estados Unidos, en el
segundo y tercer trimestres de 2010, con unacuota de mercado de 43,6% en el tercer
trimestre.
Resumiendo, es posible concluir que en la actualidad tenemos tres tipos de desarrollos
para aplicaciones móviles:
Nativas
Webs
Híbridas
En la mayor parte de las ocasiones relacionamos desarrollos móviles con
aplicacionesnativas. Este tipo de desarrollos son desarrollos hechos de forma específica
para un determinado sistema operativo.
Pero también encontramos las aplicaiones Web móviles. Que no son más que aplicaiones
que corren sobre un navegador web. Pero en este caso, sobre el navegador web de
nuestro dispositivo móvil.
También existen lo que llamamos aplicaciones híbridas. Este tipo de aplicaciones son una
combinación de ambas: Nativas + Web. Y todo apunta a que este tipo de aplicaciones
móviles tienden a ser las más utilizadas.
3. En este artículo vamos a repasar cada una de ellas:
Aplicaciones nativas
- Proceso de desarrollo de aplicaciones nativas:
Este tipo de aplicaciones están hechas para ejecutarse en un dispositivo y sistema
operativo específico. Así, la mayor parte de las aplicaciones descargadas de la appstore
de apple son aplicaciones que sólo van a correr sobre iphone e ipad. Este tipo de
aplicaciones se crean con distintos tipos de lenguajes. Las desarrolladas para iOS (el
sistema operativo de iphone e ipad) lo hacen con los lenguajes: Objective C, C, or C++.
Las aplicaciones desarrolladas para el sistema operativo Android lo hacen con lenguaje
Java. Este tipo de aplicacionescorren de forma más eficiente sobre estos dispositivos ya
que sus componentes están diseñados de forma específica para este sistema operativo.
Además, este tipo de aplicaciones pueden emplear todos los sensores y elementos del
teléfono: camara, gps, acelerómetro, agenda, etc…Esta es una diferencia fundamental
con respecto a las aplicaciones web.
En el cuadro siguiente vemos los principales entornos en función del sistema operativo del
dispositivo:
El código fuente de estas aplicaciones se escribe en función del dispositivo para el que
trabajemos. Este código fuente se compila a un ejecutable. Es un proceso similar al de las
tradicionales aplicaciones de escritorio. Todos aquellos recursos (imágenes, iconos, etc)
que la aplicación necesita para ejecutarse quedan en el archivo compilado. Este archivo
está ya listo para ser distribuido y subido a las App stores (tiendas de aplicaciones)
específicas del dispositivo para el que trabajamos. Una vez subido el ejecutable, las App
4. strores tiene un proceso de auditoría de la aplicación para evaluar si se adecúa a los
requerimientos del sistema.
- Ventajas de las aplicaciones nativas: Como hemos dicho antes, las aplicaciones
nativas tienen acceso total a las utilidades del sistema operativo del dispositivo:
Dispositivos de almacenamiento, cámara, gps, acelerómetro, etc. Esto hace que la
experiencia de usuario sea la más completa.
Además del total acceso a los elementos del teléfono las aplicaciones nativas no requieren
de conexión web para ser ejecutadas (aunque esto tiende a cambiar). Por último es
importante destacar que las aplicaciones nativas tendrán mucha más visibilidad ya que se
distribuyen a través de la appstore de los fabricantes.
- Desventajas de las aplicaciones nativas: Existen sin embargo algunas desventajas a
la hora de elegir esta opción.
Al estar desarrolladas para un dispositivo específico quedan fuera de su potencial mercado
numerosas aplicaciones.
Tienes que esperar a que te aprueben la aplicación para tenerla accesible al gran público.
Necesitas desarrolladores con conocimientos específicos de la plataforma
5. Aplicaciones Web móviles
- Proceso de desarrollo de aplicaciones web móviles: Las aplicaciones web móviles, a
diferencia de las aplicaciones nativas, se ejecutan dentro del navegador del teléfono. Por
ejemplo, en la plataforma iOS, se ejecutan en el navegador Safari. Estas aplicaciones
están desarrolladas con HTML, CSS y Javascript.
-Ventajas:
Al contrario que las aplicaciones nativas, las aplicaciones web se pueden ejecutar en
múltiples dispositivos evitando así las complejidades de tener que crear varias
aplicaciones.
El proceso de desarrollo es más sencillo ya que emplean tecnologías ya conocidas como
HTML, CSS y Javascript.
Estas aplicaciones se pueden encontrar con los tradicionales buscadores.
No necesitan de la aprobación de ningún fabricante para ser publicadas.
6. -Desventajas:
Como desventajas tenemos que el acceso a los elementos del teléfono son limitados.
Además, estas aplicaciones no se pueden vender en los market place.
Aplicaciones Híbridas
- Proceso de desarrollo de aplicaciones híbridas: Las aplicaciones híbridas aúnan lo
mejor de los dos anteriores modelos. Este tipo de aplicaciones permite el uso de
tecnologías multiplataforma como HTML, Javascript y CSS pero permiten acceder a buena
parte de los dispositivos y sensores del teléfono. Buena parte de la infraestructura es tipo
web y la comunicación con los elementos del teléfono se hace mediante
comunicadores tales como phonegap (http://phonegap.com). Un buen ejemplo de
aplicaciones híbridas es Facebook. Se descarga de la appstore y cuenta con todas las
características de una aplicación nativa pero requiere ser actualizada ocasionalmente.
El proceso de desarrollo para este tipo de aplicaciones es algo más complicado. Al igual
que para las aplicaciones nativas, el código una vez creado se compila a un ejecutable.
Además, también como en las aplicaciones Web se genera código HTML, CSS y
Javascript a ejecutar en un navegador. Ambos códigos se compilan para ser subidos
mediante un paquete distribuible a la appstore.
7. Nos queda por contaros los que es y representa el phonegap, es decir, el vínculo que une
la tecnología web con los elementos propios del teléfono. El phonegap tiene dos objetivos:
Primero, permite que un código fuente cualquiera se pueda ejecutar en diversas
plataformas. Segundo, el phonegap permite que la aplicación web acceda a los diferentes
elementos del teléfono.
Otros elementos a tener en cuenta:
Framework de Javascript para móviles
El framework de desarrollo de javascrit te va a permitir construir el interface de usuario de
una forma muy eficaz ya que mediante el empleo de librería como: Dojo, jQuery, Sencha,
etc..podrás emular los elementos del dispositivo móvil.
HTML5
HTML5 es el lenguaje que más está creciendo para el desarrollo de aplicaciones móviles.
Permite acceso a audio, video, geolocalización, soporte de aplicaciones web offline,
almacenamiento web, selectores css3 y animación 2D.
Aplicaciones de mapas con el API Javascript de ArcGIS Server
De una forma muy sencilla vas a poder migrar tus aplicaciones hechas con el API de
Javascript para ArcGisServer a plataformas móviles. Desde la versión 2.0 (ya vamos por la
2.7) ya tenemos una versión más compacta para las aplicaciones móviles.
Esta versión compacta sólo carga los objetos que la aplicación necesita además de
únicamente incorporar 32 módulos de código en lugar de 80. Si necesitases algún módulo
no cargado, con una sencilla petición Dojo.require podrías tener acceso.
Conclusiones:
Tenemos tres tipo de aplicaciones para móviles: Nativas, web e Híbridas
Comparativa: Las nativas proporcionan una mejor experiencia de usuario pero ni son
multiplataforma nio permiten una publicación inmediata sin pasar por appstores. Las
aplicaciones web puras o las híbridas, además, no requieren de conocimientos específicos
8. de lenguajes que accedan a las API propias de los dispositivos móviles lo que hace más
sencillo encontrar profesionales que lo conozcan.
Apliaciones Geo para móviles: Si ya has trabajado con la API de Javascript de
ArcGisServer te va a resultar muy sencillo, mediante las aplicaciones híbridas, crear tus
propias aplicaciones Geo para dispositivos móviles