SlideShare una empresa de Scribd logo
Herramientas de
desarrollo para
dispositivos móviles
Juan Fernando Ramírez Hernández
Ing. Software 2817is
Desarrollo de aplicaciones móviles
introducción
• Los rápidos avances tecnológicos, el surgimiento de dispositivos que facilitan la
movilidad de la información y comunicación, así como los cambios de paradigmas en las
sociedades permiten descubrir alternativas innovadoras, que ayudan a eliminar barreras
que impiden el desarrollo académico y el conocimiento en la población, creando nuevos
ambientes de aprendizaje que son el fruto del aprovechamiento tecnológico de esta nueva
era.
• Las necesidades y los retos en la educación actualmente generan la necesidad de diseñar
más y mejores estrategias, utilizando todos los recursos disponibles, ya sean humanos o
tecnológicos. De esa manera, muchas estrategias educativas han adoptado modelos de
aprendizaje que hacen uso de las tecnologías de la información (TIC’S) para reforzar el
proceso de generación del conocimiento. El uso de aplicaciones de software en éste
ámbito, ha originado el desarrollo de múltiples herramientas computacionales en todos
los niveles educativos, que van por ejemplo desde aplicaciones para comprobar conceptos
o fórmulas matemáticas, hasta aplicaciones que dan seguimiento a todo un curso
incluyendo etapas de evaluación del conocimiento.
• Objetivo General Desarrollar un documento monográfico de las
herramientas para el desarrollo de aplicaciones en dispositivos
móviles.
• Objetivo específico Hacer un análisis comparativo de las
herramientas para identificar ventajas y desventajas en el desarrollo
de aplicaciones
Herramientas de desarrollo para
dispositivos móviles.
• En cualquier ámbito de programación, hoy en día se cuenta con infinidad de
herramientas disponibles, lenguajes y entornos para poder desarrollar. Todas
esas opciones hacen que, en ocasiones, sea muy complicado decidirse por una
opción u otra. En el mundo del desarrollo para móviles y tabletas pasa lo mismo.
Actualmente dispones de muchas opciones entre ellas se encuentran:
• 1. Los lenguajes y herramientas nativos de cada plataforma: ObjectiveC/Swift y
XCode en iOS, Java y Android Studio en Android, C#, XAML y Visual Studio en
el caso de Windows Phone y Windows 8....
• 2. Herramientas multiplataforma que compilan a códigonativo. La más conocida
y utilizada es Xamarin.
• 3. Herramientas multiplataforma basadas en HTML. La más conocida es
PhoneGap/Apache Cordova, pero existen muchas más. Desarrollo Nativo Está
claro que, el desarrollo nativo es la mejor gran opción. El problema es que cada
plataforma (iOS, Android, WP...) es un mundo. Cada una de ellas utiliza un
lenguaje de programación diferente, herramientas propias y paradigmas de
programación particulares.
• Las aplicaciones escritas con Xamarin en C# se compilan a código nativo en
cada plataforma, por lo que su rendimiento es exactamente el mismo que el
de una aplicación nativa. Además, ofrece acceso directo nativo a todas las
APIs de cada plataforma, así como a los controles de interfaz de usuario
nativos.
• Desarrollo Nativo
• Está claro que, el desarrollo nativo es la mejor gran opción. El problema es
que cada plataforma (iOS, Android, WP...) es un mundo. Cada una de ellas
utiliza un lenguaje de programación diferente, herramientas propias y
paradigmas de programación particulares. A cambio se obtiene la máxima
flexibilidad, adaptación total al entorno en el que se ejecuta la aplicación y el
máximo rendimiento.
• Desarrollo multiplataforma compilado a nativo
• Una opción de compromiso es utilizar alguna plataforma de desarrollo mixta
que independiza el desarrollo del lenguaje nativo de cada plataforma móvil.
Con este tipo de herramientas se utiliza un único lenguaje y se crean
aplicaciones para todas las plataformas, eso sí, adaptando algunas
cuestiones para poder funcionar en cada caso. Lo bueno es que permite
conocer un solo lenguaje, reutilizar gran parte del código entre todas, y
generar aplicaciones nativas para todos los entornos móviles. La más
conocida es, sin duda, Xamarin. Está basada en el lenguaje C# de Microsoft
y en la plataforma .NET, y gracias a sus herramientas permite crear
aplicaciones para todas las plataformas, reutilizando gran parte del código (a
excepción de la interfaz).
• Las apps escritas en HTML5 y compiladas con PhoneGap, permiten crear la
interfaz usando HTML, CSS y JavaScript, lenguajes muy conocidos y
utilizados, y desplegar a las diferentes plataformas. En cada una se puede
utilizar un “skin” concreto para que el aspecto sea lo más similar posible al
de las aplicaciones nativas. PhoneGap y similares crean un contenedor para
la aplicación que la ejecuta como si estuviesen en un servidor web local.
Además, exponen gran parte de la funcionalidad nativa del dispositivo móvil
a través de librerías JavaScript, de modo que es muy sencillo “engancharse”
desde la aplicación HTML5 que se creando.
• Entre las desventajas principales están que la aplicación no tiene el mismo
rendimiento que una app nativa, ni tampoco te dan acceso a todas las APIs
nativas de cada plataforma. aunque sí a todas las importantes. Además,
aunque algunas bibliotecas como jQuery Mobile te dan la opción de
adaptarse al aspecto de cada sistema operativo móvil, no puedes simular
todos los controles nativos (aunque sí muchos de ellos)
• El sistema operativo Android permite utilizar una variante del lenguaje
Java para programar los dispositivos móviles. En este sentido, muchas de
las librerías Java disponibles para ordenadores de escritorio se pueden
utilizar bajo condiciones de operación Android. Sería el caso, por ejemplo, de
la librería Java Topology Suite (JTS), que ha sido tratada en la sección
correspondiente a librerías. Existen por otra parte librerías específicas
desarrolladas para Android, como es el caso de Mapsforge, pensada para
visualizar información cartográfica en dispositivos Android
• OpenLayers y LeafLet: En ambos casos se trata de librerías Javascript cuyo
objetivo es la visualización de información cartográfica en entornos de Web-
mapping. Los dispositivos móviles disponen de navegadores que interpretan
el Javascript, por lo que, en general, es posible utilizar las librerías
Javascript para visualizaciones desde dispositivos móviles, sean estos
Android, iOS u otros.
• En el caso de OpenLayers versión 2 hay que tener algunas precauciones al
programar las páginas. La futura versión 3 de OpenLayers superará estas
limitaciones. El funcionamiento de estas librerías se ha tratado en la sección
correspondiente a Librerías
• OSMDroid: El objetivo de OSMDroid es proporcionar una librería Java-
Android para visualizar mapas en dispositivos Android. Ofrece una clase
MapView para sustituir a la que viene de serie en Android que permite la
visualización de tiles de OpenStreetMap. Se pueden visualizar tiles en modo
on-line y en modo off-line. También proporciona clases para visualizar e
interactuar con overlays, marcadores y otros. MapsForge: Mapsforge es una
librería Open Source que permite gestionar la visualización de mapas de
OpenStreetMap en los dispositivos Android. Es ligera, ocupa unos 300 Kb.
Los mapas tienen un formato vectorial binario que los hace también ligeros.
Utiliza un elemento MapView similar al del API de Google. Tiene una buena
API para overlays (capas vectoriales superpuestas). Se pueden personalizar
los estilos de renderización de los mapas. Tiene una herramienta para crear
mapas a medida a través de Osmosis. Algunos puntos débiles serían que no
dispone de API para Bubbles y no limita la extensión del mapa.
• GeoPaparazzi: Permite tomar fotografías y notas georeferenciadas desde
dispositivos Android, para poder ser visualizadas posteriormente con otras
herramientas GIS. También proporciona una herramienta de tracking
durante los recorridos.
• gvSIGMini: Es un cliente visualizador de cartografía para Android.
Proporciona clientes WMS y WMS-C. Permite la búsqueda de direcciones y
el cálculo de rutas. Trabaja en modo on-line y off-line. Se pueden superponer
varias capas. Proporciona funciones de navegación GPS y posicionamiento
por GPS o por red telefónica. Se puede compartir la posición a través de las
redes sociales (Twitter, Facebook) o por SMS y eMail. Permite la integración
de Street View.
• OsmSharp: Es una herramienta para trabajar con cartografía de
OpenStreetMap. Permite la visualización de información vectorial y el
cálculo de rutas. Se puede utilizar en Android, iOS y WindowsPhone, así
como en Linux, Windows y OSX.
• Glob3Mobile: El proyecto Glob3 Mobile, desarrollado por IGO SOFTWARE y
ULPGC con el respaldo de organismos públicos y privados españoles. Se
trata de un componente para desarrollar mapas en dispositivos móviles,
nativo y multiplataforma; permite aplicaciones 2D, 2.5D y 3D, tanto Android
como iPhone y en general en cualquier entorno HTML5.
• Conclusión
• La elección de la herramienta a utilizar, solo depende de las necesidades
que la aplicación debe suplir al tener en cuenta aspectos como tipo de
aplicación a desarrollar, los dispositivos en los cuales se instalara,
plataforma de software utilizada IDE entre otros. Existe una gran variedad
de opciones, que facilitara a los desarrolladores a la toma de decisión
tecnológica a la hora de crear la solución. La fragmentación y la
incompatibilidad de plataformas es un problema que afecta a los
desarrolladores de aplicaciones móviles.

Más contenido relacionado

La actualidad más candente

Tabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetosTabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetos
Francisco Javier Canizales Vazquez
 
Trabajo de programacion (visual basic)
Trabajo de programacion (visual basic)Trabajo de programacion (visual basic)
Trabajo de programacion (visual basic)
Luis Enrique Arrieta
 
EJERCICIOS DE RECURSIVIDAD EN HASKELL
EJERCICIOS DE RECURSIVIDAD EN HASKELLEJERCICIOS DE RECURSIVIDAD EN HASKELL
EJERCICIOS DE RECURSIVIDAD EN HASKELL
Instituto Tecnológico de Tuxtla Gutiérrez
 
Mapa conceptual sobre
Mapa conceptual sobre Mapa conceptual sobre
Mapa conceptual sobre Juan Anaya
 
Organización lógica y física.
Organización lógica y física.Organización lógica y física.
Organización lógica y física.
Lely
 
estructura de sistemas operativos
estructura de sistemas operativosestructura de sistemas operativos
estructura de sistemas operativos
ernesto perez
 
Taller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionTaller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccion
José Antonio Sandoval Acosta
 
Razonamiento monotono
Razonamiento monotonoRazonamiento monotono
Razonamiento monotono
joosbeen garcia solano
 
sistemas expertos
sistemas expertossistemas expertos
maquinas de turing
maquinas de turingmaquinas de turing
maquinas de turing
Anel Sosa
 
Tabla comparativa de programacion orientada , objetos y estructurada.
Tabla comparativa de programacion orientada , objetos y estructurada.Tabla comparativa de programacion orientada , objetos y estructurada.
Tabla comparativa de programacion orientada , objetos y estructurada.Sandy Montoya Reyes
 
Estructura de un sistema operativo
Estructura de un sistema operativoEstructura de un sistema operativo
Estructura de un sistema operativo
Ian Berzeker Tovar
 
Javascript y Jquery
Javascript y JqueryJavascript y Jquery
Javascript y Jquery
Yeferson Guarin
 
Estructura jerarquica de un sistema operativo
Estructura jerarquica de un sistema operativoEstructura jerarquica de un sistema operativo
Estructura jerarquica de un sistema operativo
Yurley Ochoa
 
Unidad 2 ensamblador
Unidad 2   ensambladorUnidad 2   ensamblador
Unidad 2 ensamblador
eveTalavera
 
Modelado del sistema
Modelado del sistemaModelado del sistema
Modelado del sistema
Israel Rey
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesosayreonmx
 

La actualidad más candente (20)

Tabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetosTabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetos
 
Trabajo de programacion (visual basic)
Trabajo de programacion (visual basic)Trabajo de programacion (visual basic)
Trabajo de programacion (visual basic)
 
Estructura de registros
Estructura de registrosEstructura de registros
Estructura de registros
 
EJERCICIOS DE RECURSIVIDAD EN HASKELL
EJERCICIOS DE RECURSIVIDAD EN HASKELLEJERCICIOS DE RECURSIVIDAD EN HASKELL
EJERCICIOS DE RECURSIVIDAD EN HASKELL
 
Mapa conceptual sobre
Mapa conceptual sobre Mapa conceptual sobre
Mapa conceptual sobre
 
Organización lógica y física.
Organización lógica y física.Organización lógica y física.
Organización lógica y física.
 
estructura de sistemas operativos
estructura de sistemas operativosestructura de sistemas operativos
estructura de sistemas operativos
 
Taller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionTaller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccion
 
Razonamiento monotono
Razonamiento monotonoRazonamiento monotono
Razonamiento monotono
 
Reglasproduccion
ReglasproduccionReglasproduccion
Reglasproduccion
 
sistemas expertos
sistemas expertossistemas expertos
sistemas expertos
 
maquinas de turing
maquinas de turingmaquinas de turing
maquinas de turing
 
Tabla comparativa de programacion orientada , objetos y estructurada.
Tabla comparativa de programacion orientada , objetos y estructurada.Tabla comparativa de programacion orientada , objetos y estructurada.
Tabla comparativa de programacion orientada , objetos y estructurada.
 
Estructura de un sistema operativo
Estructura de un sistema operativoEstructura de un sistema operativo
Estructura de un sistema operativo
 
Javascript y Jquery
Javascript y JqueryJavascript y Jquery
Javascript y Jquery
 
Estructura jerarquica de un sistema operativo
Estructura jerarquica de un sistema operativoEstructura jerarquica de un sistema operativo
Estructura jerarquica de un sistema operativo
 
Unidad 2 ensamblador
Unidad 2   ensambladorUnidad 2   ensamblador
Unidad 2 ensamblador
 
Modelado del sistema
Modelado del sistemaModelado del sistema
Modelado del sistema
 
09 sistemas ubicuos
09 sistemas ubicuos09 sistemas ubicuos
09 sistemas ubicuos
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesos
 

Similar a Herramientas de desarrollo para dispositivos móviles

Programacion de aplicaciones moviles
Programacion de aplicaciones movilesProgramacion de aplicaciones moviles
Programacion de aplicaciones moviles
oswaldo75sp
 
Programacion de aplicaciones moviles
Programacion de aplicaciones movilesProgramacion de aplicaciones moviles
Programacion de aplicaciones moviles
Jhonathan Suarez Chavez
 
Programación de aplicaciones móviles
Programación de aplicaciones móvilesProgramación de aplicaciones móviles
Programación de aplicaciones móviles
GREINDER MARCHENA & LIZ VASQUEZ
 
Programacion de app
Programacion de appProgramacion de app
Programacion de app
Cristhian Deza Castillo
 
Programacion de app
Programacion de appProgramacion de app
Programacion de app
Jhosely Malca
 
6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles 6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles
RAUL Velez
 
Marco teorico
Marco teoricoMarco teorico
Marco teorico
yamary sanchez
 
Desarrollo de apps multiplataforma Movil
Desarrollo de apps multiplataforma MovilDesarrollo de apps multiplataforma Movil
Desarrollo de apps multiplataforma Movil
Ing Erick Guardado
 
Como desarrollar aplicaciones moviles, que debemos tener en cuenta?
Como desarrollar aplicaciones moviles, que debemos tener en cuenta?Como desarrollar aplicaciones moviles, que debemos tener en cuenta?
Como desarrollar aplicaciones moviles, que debemos tener en cuenta?
Roberto Taborda
 
Herramientas Tecnológicas (Google Docs, php, Second Life, JMeter, PhoneGap)
Herramientas Tecnológicas (Google Docs, php, Second Life, JMeter, PhoneGap)Herramientas Tecnológicas (Google Docs, php, Second Life, JMeter, PhoneGap)
Herramientas Tecnológicas (Google Docs, php, Second Life, JMeter, PhoneGap)
Andrea Pineda
 
Aplicaciones
AplicacionesAplicaciones
Aplicaciones
Jhosely Malca
 
Creación de apps móviles sin conocimientos de programación
Creación de apps móviles sin conocimientos de programaciónCreación de apps móviles sin conocimientos de programación
Creación de apps móviles sin conocimientos de programación
Enrique Farez
 
Capitulo 16 LA NUBE MÓVIL Y EL ECOSISTEMA DE APLICACIONES WEB
Capitulo 16 LA NUBE MÓVIL Y EL ECOSISTEMA DE APLICACIONES WEBCapitulo 16 LA NUBE MÓVIL Y EL ECOSISTEMA DE APLICACIONES WEB
Capitulo 16 LA NUBE MÓVIL Y EL ECOSISTEMA DE APLICACIONES WEB
Edwin Ruiz
 
Usos y tipos_de_aplicaciones_moviles
Usos y tipos_de_aplicaciones_movilesUsos y tipos_de_aplicaciones_moviles
Usos y tipos_de_aplicaciones_moviles
Katherine Guerra
 
6- Unidad 1: Introducción a la Plataforma .NET-1.3. Aplicaciones en C# .net (...
6- Unidad 1: Introducción a la Plataforma .NET-1.3. Aplicaciones en C# .net (...6- Unidad 1: Introducción a la Plataforma .NET-1.3. Aplicaciones en C# .net (...
6- Unidad 1: Introducción a la Plataforma .NET-1.3. Aplicaciones en C# .net (...
Luis Fernando Aguas Bucheli
 
U1 p5 entornos_desarrollo_moviles
U1 p5 entornos_desarrollo_movilesU1 p5 entornos_desarrollo_moviles
U1 p5 entornos_desarrollo_moviles
Akirepaho
 
Aplicaciones
AplicacionesAplicaciones
Diapositivas de desarrollo de programación de aplicaciones moviles
Diapositivas de desarrollo de programación de aplicaciones movilesDiapositivas de desarrollo de programación de aplicaciones moviles
Diapositivas de desarrollo de programación de aplicaciones moviles
carlosnc2017
 

Similar a Herramientas de desarrollo para dispositivos móviles (20)

Programacion de aplicaciones moviles
Programacion de aplicaciones movilesProgramacion de aplicaciones moviles
Programacion de aplicaciones moviles
 
Programacion de aplicaciones moviles
Programacion de aplicaciones movilesProgramacion de aplicaciones moviles
Programacion de aplicaciones moviles
 
Programación de aplicaciones móviles
Programación de aplicaciones móvilesProgramación de aplicaciones móviles
Programación de aplicaciones móviles
 
Programacion de app
Programacion de appProgramacion de app
Programacion de app
 
Programacion de app
Programacion de appProgramacion de app
Programacion de app
 
app
appapp
app
 
6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles 6 Lenguajes para dispositivos móviles
6 Lenguajes para dispositivos móviles
 
Marco teorico
Marco teoricoMarco teorico
Marco teorico
 
Desarrollo de apps multiplataforma Movil
Desarrollo de apps multiplataforma MovilDesarrollo de apps multiplataforma Movil
Desarrollo de apps multiplataforma Movil
 
Como desarrollar aplicaciones moviles, que debemos tener en cuenta?
Como desarrollar aplicaciones moviles, que debemos tener en cuenta?Como desarrollar aplicaciones moviles, que debemos tener en cuenta?
Como desarrollar aplicaciones moviles, que debemos tener en cuenta?
 
Herramientas Tecnológicas (Google Docs, php, Second Life, JMeter, PhoneGap)
Herramientas Tecnológicas (Google Docs, php, Second Life, JMeter, PhoneGap)Herramientas Tecnológicas (Google Docs, php, Second Life, JMeter, PhoneGap)
Herramientas Tecnológicas (Google Docs, php, Second Life, JMeter, PhoneGap)
 
Aplicaciones
AplicacionesAplicaciones
Aplicaciones
 
Creación de apps móviles sin conocimientos de programación
Creación de apps móviles sin conocimientos de programaciónCreación de apps móviles sin conocimientos de programación
Creación de apps móviles sin conocimientos de programación
 
Capitulo 16 LA NUBE MÓVIL Y EL ECOSISTEMA DE APLICACIONES WEB
Capitulo 16 LA NUBE MÓVIL Y EL ECOSISTEMA DE APLICACIONES WEBCapitulo 16 LA NUBE MÓVIL Y EL ECOSISTEMA DE APLICACIONES WEB
Capitulo 16 LA NUBE MÓVIL Y EL ECOSISTEMA DE APLICACIONES WEB
 
Sistemas operativos moviles
Sistemas operativos movilesSistemas operativos moviles
Sistemas operativos moviles
 
Usos y tipos_de_aplicaciones_moviles
Usos y tipos_de_aplicaciones_movilesUsos y tipos_de_aplicaciones_moviles
Usos y tipos_de_aplicaciones_moviles
 
6- Unidad 1: Introducción a la Plataforma .NET-1.3. Aplicaciones en C# .net (...
6- Unidad 1: Introducción a la Plataforma .NET-1.3. Aplicaciones en C# .net (...6- Unidad 1: Introducción a la Plataforma .NET-1.3. Aplicaciones en C# .net (...
6- Unidad 1: Introducción a la Plataforma .NET-1.3. Aplicaciones en C# .net (...
 
U1 p5 entornos_desarrollo_moviles
U1 p5 entornos_desarrollo_movilesU1 p5 entornos_desarrollo_moviles
U1 p5 entornos_desarrollo_moviles
 
Aplicaciones
AplicacionesAplicaciones
Aplicaciones
 
Diapositivas de desarrollo de programación de aplicaciones moviles
Diapositivas de desarrollo de programación de aplicaciones movilesDiapositivas de desarrollo de programación de aplicaciones moviles
Diapositivas de desarrollo de programación de aplicaciones moviles
 

Más de Fernand Bernowly

Base de datos moviles
Base de datos movilesBase de datos moviles
Base de datos moviles
Fernand Bernowly
 
base de datos orientado a dispositivos moviles
base de datos orientado a dispositivos movilesbase de datos orientado a dispositivos moviles
base de datos orientado a dispositivos moviles
Fernand Bernowly
 
Metodologías para desarrollar(moviles )
Metodologías para desarrollar(moviles )Metodologías para desarrollar(moviles )
Metodologías para desarrollar(moviles )
Fernand Bernowly
 
Instrucciones y estructuras
Instrucciones y estructurasInstrucciones y estructuras
Instrucciones y estructuras
Fernand Bernowly
 
Herramientas de desarrollo para dispositivos móviles
Herramientas de desarrollo para dispositivos móvilesHerramientas de desarrollo para dispositivos móviles
Herramientas de desarrollo para dispositivos móviles
Fernand Bernowly
 
Ingeniería en software instrucciones y estructuras más importantes
Ingeniería en software instrucciones y estructuras más importantesIngeniería en software instrucciones y estructuras más importantes
Ingeniería en software instrucciones y estructuras más importantes
Fernand Bernowly
 
Metodologías para el desarrollo en dispositivos móviles
Metodologías para el desarrollo en dispositivos móvilesMetodologías para el desarrollo en dispositivos móviles
Metodologías para el desarrollo en dispositivos móviles
Fernand Bernowly
 

Más de Fernand Bernowly (7)

Base de datos moviles
Base de datos movilesBase de datos moviles
Base de datos moviles
 
base de datos orientado a dispositivos moviles
base de datos orientado a dispositivos movilesbase de datos orientado a dispositivos moviles
base de datos orientado a dispositivos moviles
 
Metodologías para desarrollar(moviles )
Metodologías para desarrollar(moviles )Metodologías para desarrollar(moviles )
Metodologías para desarrollar(moviles )
 
Instrucciones y estructuras
Instrucciones y estructurasInstrucciones y estructuras
Instrucciones y estructuras
 
Herramientas de desarrollo para dispositivos móviles
Herramientas de desarrollo para dispositivos móvilesHerramientas de desarrollo para dispositivos móviles
Herramientas de desarrollo para dispositivos móviles
 
Ingeniería en software instrucciones y estructuras más importantes
Ingeniería en software instrucciones y estructuras más importantesIngeniería en software instrucciones y estructuras más importantes
Ingeniería en software instrucciones y estructuras más importantes
 
Metodologías para el desarrollo en dispositivos móviles
Metodologías para el desarrollo en dispositivos móvilesMetodologías para el desarrollo en dispositivos móviles
Metodologías para el desarrollo en dispositivos móviles
 

Último

El lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libroEl lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libro
Distea V región
 
Mapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativaMapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativa
TatianaVanessaAltami
 
El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10
Alejandrino Halire Ccahuana
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
Alejandrino Halire Ccahuana
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
El Fortí
 
Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
MauricioSnchez83
 
Evaluación de Lengua Española de cuarto grado de primaria
Evaluación de Lengua Española de cuarto grado de primariaEvaluación de Lengua Española de cuarto grado de primaria
Evaluación de Lengua Española de cuarto grado de primaria
SoniaMedina49
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
LorenaCovarrubias12
 
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
20minutos
 
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
María Sánchez González (@cibermarikiya)
 
Presentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdfPresentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdf
H4RV3YH3RN4ND3Z
 
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptxAutomatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
GallardoJahse
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
lautyzaracho4
 
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
Unidad de Espiritualidad Eudista
 
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJELA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
jecgjv
 
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxxPLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
cportizsanchez48
 
Introducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BIIntroducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BI
arleyo2006
 
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Monseespinoza6
 
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
FelixCamachoGuzman
 
UNA VISITA A SAN PEDRO EN EL VATICANO.pdf
UNA VISITA A SAN PEDRO EN EL VATICANO.pdfUNA VISITA A SAN PEDRO EN EL VATICANO.pdf
UNA VISITA A SAN PEDRO EN EL VATICANO.pdf
Joan Ribes Gallén
 

Último (20)

El lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libroEl lugar mas bonito del mundo resumen del libro
El lugar mas bonito del mundo resumen del libro
 
Mapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativaMapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativa
 
El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
 
Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
 
Evaluación de Lengua Española de cuarto grado de primaria
Evaluación de Lengua Española de cuarto grado de primariaEvaluación de Lengua Española de cuarto grado de primaria
Evaluación de Lengua Española de cuarto grado de primaria
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
 
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
Examen de Lengua Castellana y Literatura de la EBAU en Castilla-La Mancha 2024.
 
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
Aprender-IA: Recursos online gratuitos para estar al tanto y familiarizarse c...
 
Presentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdfPresentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdf
 
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptxAutomatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
 
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
Triduo Eudista: Jesucristo, Sumo y Eterno Sacerdote; El Corazón de Jesús y el...
 
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJELA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
 
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxxPLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
 
Introducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BIIntroducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BI
 
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
 
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
 
UNA VISITA A SAN PEDRO EN EL VATICANO.pdf
UNA VISITA A SAN PEDRO EN EL VATICANO.pdfUNA VISITA A SAN PEDRO EN EL VATICANO.pdf
UNA VISITA A SAN PEDRO EN EL VATICANO.pdf
 

Herramientas de desarrollo para dispositivos móviles

  • 1. Herramientas de desarrollo para dispositivos móviles Juan Fernando Ramírez Hernández Ing. Software 2817is Desarrollo de aplicaciones móviles
  • 2. introducción • Los rápidos avances tecnológicos, el surgimiento de dispositivos que facilitan la movilidad de la información y comunicación, así como los cambios de paradigmas en las sociedades permiten descubrir alternativas innovadoras, que ayudan a eliminar barreras que impiden el desarrollo académico y el conocimiento en la población, creando nuevos ambientes de aprendizaje que son el fruto del aprovechamiento tecnológico de esta nueva era. • Las necesidades y los retos en la educación actualmente generan la necesidad de diseñar más y mejores estrategias, utilizando todos los recursos disponibles, ya sean humanos o tecnológicos. De esa manera, muchas estrategias educativas han adoptado modelos de aprendizaje que hacen uso de las tecnologías de la información (TIC’S) para reforzar el proceso de generación del conocimiento. El uso de aplicaciones de software en éste ámbito, ha originado el desarrollo de múltiples herramientas computacionales en todos los niveles educativos, que van por ejemplo desde aplicaciones para comprobar conceptos o fórmulas matemáticas, hasta aplicaciones que dan seguimiento a todo un curso incluyendo etapas de evaluación del conocimiento.
  • 3. • Objetivo General Desarrollar un documento monográfico de las herramientas para el desarrollo de aplicaciones en dispositivos móviles. • Objetivo específico Hacer un análisis comparativo de las herramientas para identificar ventajas y desventajas en el desarrollo de aplicaciones
  • 4. Herramientas de desarrollo para dispositivos móviles. • En cualquier ámbito de programación, hoy en día se cuenta con infinidad de herramientas disponibles, lenguajes y entornos para poder desarrollar. Todas esas opciones hacen que, en ocasiones, sea muy complicado decidirse por una opción u otra. En el mundo del desarrollo para móviles y tabletas pasa lo mismo. Actualmente dispones de muchas opciones entre ellas se encuentran: • 1. Los lenguajes y herramientas nativos de cada plataforma: ObjectiveC/Swift y XCode en iOS, Java y Android Studio en Android, C#, XAML y Visual Studio en el caso de Windows Phone y Windows 8.... • 2. Herramientas multiplataforma que compilan a códigonativo. La más conocida y utilizada es Xamarin. • 3. Herramientas multiplataforma basadas en HTML. La más conocida es PhoneGap/Apache Cordova, pero existen muchas más. Desarrollo Nativo Está claro que, el desarrollo nativo es la mejor gran opción. El problema es que cada plataforma (iOS, Android, WP...) es un mundo. Cada una de ellas utiliza un lenguaje de programación diferente, herramientas propias y paradigmas de programación particulares.
  • 5. • Las aplicaciones escritas con Xamarin en C# se compilan a código nativo en cada plataforma, por lo que su rendimiento es exactamente el mismo que el de una aplicación nativa. Además, ofrece acceso directo nativo a todas las APIs de cada plataforma, así como a los controles de interfaz de usuario nativos. • Desarrollo Nativo • Está claro que, el desarrollo nativo es la mejor gran opción. El problema es que cada plataforma (iOS, Android, WP...) es un mundo. Cada una de ellas utiliza un lenguaje de programación diferente, herramientas propias y paradigmas de programación particulares. A cambio se obtiene la máxima flexibilidad, adaptación total al entorno en el que se ejecuta la aplicación y el máximo rendimiento.
  • 6. • Desarrollo multiplataforma compilado a nativo • Una opción de compromiso es utilizar alguna plataforma de desarrollo mixta que independiza el desarrollo del lenguaje nativo de cada plataforma móvil. Con este tipo de herramientas se utiliza un único lenguaje y se crean aplicaciones para todas las plataformas, eso sí, adaptando algunas cuestiones para poder funcionar en cada caso. Lo bueno es que permite conocer un solo lenguaje, reutilizar gran parte del código entre todas, y generar aplicaciones nativas para todos los entornos móviles. La más conocida es, sin duda, Xamarin. Está basada en el lenguaje C# de Microsoft y en la plataforma .NET, y gracias a sus herramientas permite crear aplicaciones para todas las plataformas, reutilizando gran parte del código (a excepción de la interfaz).
  • 7. • Las apps escritas en HTML5 y compiladas con PhoneGap, permiten crear la interfaz usando HTML, CSS y JavaScript, lenguajes muy conocidos y utilizados, y desplegar a las diferentes plataformas. En cada una se puede utilizar un “skin” concreto para que el aspecto sea lo más similar posible al de las aplicaciones nativas. PhoneGap y similares crean un contenedor para la aplicación que la ejecuta como si estuviesen en un servidor web local. Además, exponen gran parte de la funcionalidad nativa del dispositivo móvil a través de librerías JavaScript, de modo que es muy sencillo “engancharse” desde la aplicación HTML5 que se creando. • Entre las desventajas principales están que la aplicación no tiene el mismo rendimiento que una app nativa, ni tampoco te dan acceso a todas las APIs nativas de cada plataforma. aunque sí a todas las importantes. Además, aunque algunas bibliotecas como jQuery Mobile te dan la opción de adaptarse al aspecto de cada sistema operativo móvil, no puedes simular todos los controles nativos (aunque sí muchos de ellos)
  • 8. • El sistema operativo Android permite utilizar una variante del lenguaje Java para programar los dispositivos móviles. En este sentido, muchas de las librerías Java disponibles para ordenadores de escritorio se pueden utilizar bajo condiciones de operación Android. Sería el caso, por ejemplo, de la librería Java Topology Suite (JTS), que ha sido tratada en la sección correspondiente a librerías. Existen por otra parte librerías específicas desarrolladas para Android, como es el caso de Mapsforge, pensada para visualizar información cartográfica en dispositivos Android
  • 9. • OpenLayers y LeafLet: En ambos casos se trata de librerías Javascript cuyo objetivo es la visualización de información cartográfica en entornos de Web- mapping. Los dispositivos móviles disponen de navegadores que interpretan el Javascript, por lo que, en general, es posible utilizar las librerías Javascript para visualizaciones desde dispositivos móviles, sean estos Android, iOS u otros. • En el caso de OpenLayers versión 2 hay que tener algunas precauciones al programar las páginas. La futura versión 3 de OpenLayers superará estas limitaciones. El funcionamiento de estas librerías se ha tratado en la sección correspondiente a Librerías
  • 10. • OSMDroid: El objetivo de OSMDroid es proporcionar una librería Java- Android para visualizar mapas en dispositivos Android. Ofrece una clase MapView para sustituir a la que viene de serie en Android que permite la visualización de tiles de OpenStreetMap. Se pueden visualizar tiles en modo on-line y en modo off-line. También proporciona clases para visualizar e interactuar con overlays, marcadores y otros. MapsForge: Mapsforge es una librería Open Source que permite gestionar la visualización de mapas de OpenStreetMap en los dispositivos Android. Es ligera, ocupa unos 300 Kb. Los mapas tienen un formato vectorial binario que los hace también ligeros. Utiliza un elemento MapView similar al del API de Google. Tiene una buena API para overlays (capas vectoriales superpuestas). Se pueden personalizar los estilos de renderización de los mapas. Tiene una herramienta para crear mapas a medida a través de Osmosis. Algunos puntos débiles serían que no dispone de API para Bubbles y no limita la extensión del mapa.
  • 11. • GeoPaparazzi: Permite tomar fotografías y notas georeferenciadas desde dispositivos Android, para poder ser visualizadas posteriormente con otras herramientas GIS. También proporciona una herramienta de tracking durante los recorridos. • gvSIGMini: Es un cliente visualizador de cartografía para Android. Proporciona clientes WMS y WMS-C. Permite la búsqueda de direcciones y el cálculo de rutas. Trabaja en modo on-line y off-line. Se pueden superponer varias capas. Proporciona funciones de navegación GPS y posicionamiento por GPS o por red telefónica. Se puede compartir la posición a través de las redes sociales (Twitter, Facebook) o por SMS y eMail. Permite la integración de Street View.
  • 12. • OsmSharp: Es una herramienta para trabajar con cartografía de OpenStreetMap. Permite la visualización de información vectorial y el cálculo de rutas. Se puede utilizar en Android, iOS y WindowsPhone, así como en Linux, Windows y OSX. • Glob3Mobile: El proyecto Glob3 Mobile, desarrollado por IGO SOFTWARE y ULPGC con el respaldo de organismos públicos y privados españoles. Se trata de un componente para desarrollar mapas en dispositivos móviles, nativo y multiplataforma; permite aplicaciones 2D, 2.5D y 3D, tanto Android como iPhone y en general en cualquier entorno HTML5.
  • 13. • Conclusión • La elección de la herramienta a utilizar, solo depende de las necesidades que la aplicación debe suplir al tener en cuenta aspectos como tipo de aplicación a desarrollar, los dispositivos en los cuales se instalara, plataforma de software utilizada IDE entre otros. Existe una gran variedad de opciones, que facilitara a los desarrolladores a la toma de decisión tecnológica a la hora de crear la solución. La fragmentación y la incompatibilidad de plataformas es un problema que afecta a los desarrolladores de aplicaciones móviles.