SlideShare una empresa de Scribd logo
1 de 42
TECNOLÓGICO NACIONAL DE MÉXICO
InstitutoTecnológicode Saltillo
INTEGRACIÓN Y
PROGRAMACIÓN
MÓVIL
INGENIERÍA EN SISTEMAS
COMPUTACIONALES
FUNDAMENTOS DE INVESTIGACIÓN
EDUARDO CONTRERAS DELGADO.
 MARIO ORLANDO TORRES SALAZAR.
 KERIM DAVID BELMONTES LLANAS.
 BRANDON ALEXIS PRADO CASTRO.
SALTILLO, COAHUILA DEZARAGOZA, MÉXICO.
NOVIEMBREDE2019.
Integración y programación móvil 1 | P á g i n a
Índice
Resumen.................................................................................................................................. 4
Objetivo general.................................................................................................................. 4
Palabras clave ..................................................................................................................... 4
Hipótesis general................................................................................................................. 5
Síntesis ............................................................................................................................... 5
Introducción............................................................................................................................. 8
Alcance............................................................................................................................... 9
Definiciones.......................................................................................................................10
Antecedentes.....................................................................................................................12
Estado Actual...........................................................................................................................16
-Diseñoe implementación de una aplicación en laeducación................................................16
Justificación ..................................................................................................................16
Objetivos......................................................................................................................17
Estadísticas del rendimiento de los niños........................................................................18
-Desarrollo de una aplicación que permita administrar pedidos ............................................19
Justificación ..................................................................................................................19
Objetivos......................................................................................................................20
Creación de la aplicación................................................................................................21
Observaciones de la aplicación.......................................................................................22
Planteamiento del problema....................................................................................................23
Identificación del problema................................................................................................23
Objetivo............................................................................................................................23
Justificación.......................................................................................................................23
Límites y restricciones........................................................................................................25
Marco Teórico .........................................................................................................................26
Dispositivos móviles...........................................................................................................26
Sistemas operativos para dispositivos móviles.....................................................................26
Cuota de mercado de los dos principales sistemas operativosen móviles .............................27
Programaciónen diferentes plataformas ............................................................................28
Problemáticas de crear una aplicación.................................................................................28
-Lenguajes de programación ...............................................................................................30
Lenguajes en Android..................................................................................................30
Integración y programación móvil 2 | P á g i n a
Lenguajes iOS.............................................................................................................31
Lenguajes Cross-Platform............................................................................................31
Otros Lenguajes..........................................................................................................32
Teoría......................................................................................................................................35
Teoría de lenguajes de programación ..................................................................................35
Teoría de los compiladores..................................................................................................36
Resultadosesperados…………………………………………………………………………………………………………..…..…38
Conclusión...............................................................................................................................38
Referencias..............................................................................................................................40
Índice de cuadros
Tabla 1 - Talleres realizados en la escuela Carlos Crespi y Francisco Dávila __________________18
Tabla 2 - Observaciones de la aplicación ______________________________________________22
Tabla 3 - Descripción de los dos principales Sistemas Operativos en Móviles ________________27
Tabla 4 - Lenguajes de programación más usados_______________________________________34
Índice de imágenes
Ilustración 1 – Mini Nurse-Lite--------------------------------------------------------------------------------6
Ilustración 2 – 3D Anatomy Learning------------------------------------------------------------------------7
Ilustración 3 - Epocrates---------------------------------------------------------------------------------------7
Ilustración 4 - HP-35------------------------------------------------------------------------------------------ 12
Ilustración 5 - Apple Newton ------------------------------------------------------------------------------- 12
Ilustración 6 - PocketPC, fabricada por Acer-------------------------------------------------------------- 13
Ilustración 7 - IDEs para Android--------------------------------------------------------------------------- 13
Ilustración 8 - Plataforma Java----------------------------------------------------------------------------- 14
Ilustración 9 - Código en Objective C ---------------------------------------------------------------------- 14
Ilustración 10 - SmartPhone con Android----------------------------------------------------------------- 15
Ilustración 11 - Arquitectura del Sistema Operativo más usado del mundo------------------------- 15
Ilustración 12 - Junta con padres de familia para presentar el proyecto----------------------------- 16
Ilustración 13 – Niños realizando las actividades-------------------------------------------------------- 17
Integración y programación móvil 3 | P á g i n a
Ilustración 14 – Aplicación del proyecto ------------------------------------------------------------------ 17
Ilustración 15 - Gráfico de los resultados académicos -------------------------------------------------- 18
Ilustración 16 - Aplicación desarrollada para la gestión de pedidos---------------------------------- 19
Ilustración 17 - Proceso actual que usa la división de perfumería------------------------------------- 20
Ilustración 18 - Prototipo de Pantalla --------------------------------------------------------------------- 21
Ilustración 19 - Diseño para la creación de pedidos----------------------------------------------------- 21
Ilustración 20 - Diagrama de secuencia, Inicio de sesión ----------------------------------------------- 21
Ilustración 21 - Logo de Android --------------------------------------------------------------------------- 26
Ilustración 22 - Logo de iOS--------------------------------------------------------------------------------- 27
Ilustración 23 - Cuota de mercado de los dos principales S.O. en móviles --------------------------- 27
Ilustración 24 - Cuota de los principales Sistemas Operativos para ordenador --------------------- 28
Ilustración 25-------------------------------------------------------------------------------------------------- 29
Ilustración 26 - Apartado de actualizaciones en Google Play Store----------------------------------- 29
Ilustración 27 - App Vs. Pág. Web-------------------------------------------------------------------------- 29
Ilustración 28 - Gran parte de Android, está desarrollado en Java------------------------------------ 30
Ilustración 29 - Kotlin se ha convertido en el leguaje preferido por Google ------------------------- 30
Ilustración 30-------------------------------------------------------------------------------------------------- 31
Ilustración31 - Compilador-------------------------------------------------------------------------------------------36
Integración y programación móvil 4 | P á g i n a
Resumen
os avances en las ciencias informáticas han sido muy acelerados, los
dispositivos móviles en la actualidad están presentes prácticamente en
cualquier rincón a donde vayamos. Hace no mucho tiempo resultaba
complejo construir aplicaciones para ello, hoy en día es relativamente sencillo
desarrollar programas, basta tomar algo de la abundante literatura existente, elegir
un lenguaje de programación y descargar el software necesario que permita la
instalación de desarrollo apropiado para dicha actividad.
Hoy en día las principales empresas que dominan el mercado son Google y Apple
con sus respectivas plataformas para dispositivos móviles: Android y iOS, las cuales
además del desarrollo de aplicaciones daban la opción de publicar dichas apps para
que el usuario final pudiera comprarlas o descargarlas directamente en su
dispositivo por medio de la App Store y Play Store.
Objetivo general
ar a conocer las diferentes herramientas utilizadas para el desarrollo de
las aplicaciones que conocemos en hoy en día, además de la aplicación
de estas mismas para los diferentes ámbitos de la vida cómo: el estudio,
el trabajo, el ocio, etc. Y así simplificar nuestra vida por medio de las nuevas
herramientas.
Palabras clave
Programación en dispositivos móviles, Android, iOS, software, lenguajes de
programación, compiladores.
L
D
Integración y programación móvil 5 | P á g i n a
Hipótesis general
En este proyecto se dará a conocer el cuan problemático es el realizar una
aplicación para dispositivos móviles y a su vez observar el sí es más rentable una
aplicación móvil o utilizar algún otro medio, en el sentido de observar el por qué la
aplicación móvil va complicando el espacio de almacenamiento en el dispositivo
móvil en cuestión, a comparación de cuando se crean aplicaciones fijas sin
necesidades de actualizaciones que ya tienen definido y resuelto ese problema al
ser una aplicación la cual está ya definida con un propósito a realizar, haciendo que
las aplicaciones ya terminadas sean mejores en el sentido de facilitar al usuario su
uso pero esto a su vez provoca que también sean algo tediosas para el mismo por
el tema del espacio ya antes hablado.
Comprobando con otros trabajos de investigación podemos observar que las
aplicaciones móviles son más recomendadas ya que son más accesibles para los
usuarios.
Síntesis
En el sector educativo ahora es necesario contar con herramientas tecnológicas
dentro de la comunidad y el entorno. Las herramientas que necesitan las
instituciones educativas buscan ofrecer mejores servicios a través de hacer más
eficientes los procesos, comunicar a su comunidad o difundir el conocimiento de
manera apropiada.
Las necesidades actuales ya no se enfocan simplemente sobre plataformas que
almacenan datos y de escritorio, sino que buscan interactividad y que vayan al día
con las innovaciones.
Las plataformas de uso actual en el sistema educativo se enfocan en el control
escolar además de algunas funciones administrativas, donde pueden obtener
reportes que ayudan a la toma de decisiones internas y datos de interés para los
directivos y responsables para mejorar sus procesos.
Integración y programación móvil 6 | P á g i n a
Ahora el sector educativo busca mejorar los procesos de control interno y también
crear canales de comunicación dentro de instituciones educativas, unificar y
comunicar por medio de una App a las diferentes personas de la escuela: directivo,
administrativo, docente, padre y alumno.
La incorporación de las Tecnologías de la Información y Comunicación (TIC) en el
ámbito de la educación, ha adquirido una creciente importancia y evolución en estos
últimos años; luego del mercado lúdico, la educación es el segundo sector con el
mayor número de aplicaciones móviles.
Las de control y de comunicación, en este 2018 destacan y traen consigo funciones
como: visualizar en tiempo real la hora de entrada de los hijos a la institución, medir
su avance en inglés y hasta saber si se ha portado mal dentro del aula.
El uso de aplicaciones móviles en las instituciones permite tener una comunicación
directa e interacción con los trabajadores de la comunidad, involucrar a los padres
de familia, tutores, maestros y alumnos ayuda mejorar la calidad de la educación.
Algunos ejemplos de aplicaciones usadas:
Nombre: Mini Nurse–Lite
Plataforma: Android
Idioma: inglés
Descripción: Mini Nurse-Lite es una aplicación de enfermería de
información general de la terminología médica, abreviaturas
médicas, sufijos y prefijos médicos, diferentes tipos de
calculadoras, los pulmones y los sonidos del corazón, los sitios de
inyección subcutánea, la práctica médica de cálculo y preguntas de
práctica sobre diversos temas de enfermería.Ilustración 1 – Mini
Nurse-Lite
Integración y programación móvil 7 | P á g i n a
Nombre: 3D Anatomy Learning
Plataforma: Android
Idioma: inglés, español
Requiere conexión permanente a internet.
Descripción: Anatomy Learning es una aplicación diseñada para
facilitar el aprendizaje de la anatomía humana con contenidos
didácticos de huesos, ligamentos, músculos, arterias, venas,
nervios, corazón, pulmones, riñones, entre otros.
Nombre: Epocrates
Plataforma: iPhone, iPad y Android.
Idioma: inglés
Descripción: Epocrates es una aplicación médica que contiene un
identificador de pastillas, un directorio de información sobre
medicamentos y un sistema de ecuaciones para calcular dosis de
medicaciones y las interacciones que pueden tener las
combinaciones.
Ilustración 2 – 3D Anatomy
Learning
Ilustración 3 - Epocrates
Integración y programación móvil 8 | P á g i n a
Introducción
n este proyecto hablaremos del cómo se relaciona el tema de integración
y programación móvil con los diferentes ámbitos de la vida cotidiana: el
trabajo y la educación. El uso de estas herramientas permite hacer más
dinámica cualquier actividad y así mismo provoca una reducción de esfuerzos para
una mejor agilidad en determinada actividad.
Sabemos que la educación ha sido estancada con las mismas prácticas de siempre
o bien conocida como el clásico modelo tradicional, sin embargo, con la
implementación de dispositivos móviles con aplicaciones educativas para el estudio,
puede marcar la diferencia en el aprendizaje de los más pequeños: los niños y niñas.
Una situación similar ocurre con el trabajo, en la actualidad se siguen realizando
prácticas antiguas y poco eficientes, sin embargo, para las compras en línea se
utilizan las nuevas tecnologías desarrolladas para móviles, nos permite comprar con
plena seguridad, ya que los trabajadores por medio de sus dispositivos les permiten
realizar sus tareas más rápido y teniendo una logística impecable para satisfacer al
usuario final.
E
Integración y programación móvil 9 | P á g i n a
Alcance
l desarrollo de aplicaciones para los dispositivos móviles se propicia en
tecnologías propietarias que no han sido liberadas y en tecnologías que
son de uso comercial, así mismo la investigación se enmarca en estas
últimas ya que a partir de ellas está disponible la información para su explotación.
Así mismo es de gran importancia exhibir que existen diferentes tipos de
aplicaciones para dispositivos móviles: mapas y navegación, búsqueda y el acceso
a internet, compras, juegos, comunicaciones y chat, además de aplicaciones
corporativas. Todas ellas usadas por el usuario común según sus prioridades y
necesidades.
E
Integración y programación móvil 10 | P á g i n a
Definiciones
1. App
Una app es una aplicación de software que se instala en dispositivos móviles o
tablets para ayudar al usuario en una labor concreta.
2. Programación informática:
Refiere a la acción de crear programas o aplicaciones, a través del desarrollo de
un código fuente, el cual se basa en el conjunto de instrucciones que sigue el
ordenador para ejecutar el programa.
Estas instrucciones se encuentran escritas en lenguaje de programación que
luego son traducidas a un lenguaje de máquina, que puede ser interpretado y
ejecutado por el hardware del equipo (parte física del equipo).
Dicho código fuente es creado, diseñado, codificado, mantenido y depurado a
través de la programación, donde el principal objetivo a lograr es el desarrollo de
sistemas que sean eficaces, accesibles y agradables o amigables para el usuario.
3. Programa informático:
Es una pieza de software, es decir, una secuencia compleja de instrucciones y
procesos orquestados para cumplir una tarea específica en un computador.
4. Código fuente:
Conjunto de líneas de texto que expresan, en un lenguaje de programación
determinado, los pasos a seguir para una ejecución del programa correcta.
5. Lenguaje de programación:
Un programa destinado a la construcción de otros programas informáticos.
6. Programa:
Se refiere a una secuencia compleja de instrucciones y procesos para cumplir
una tarea en específico en un computador.
Integración y programación móvil 11 | P á g i n a
7. Lenguaje de programación:
Se le conoce a un programa destinado a la construcción de otros programas
informáticos.
8. Programación móvil:
Es la acción de desarrollar aplicaciones para aparatos celulares, smartphones y
dispositivos con recursos limitados.
9. Software:
Es un término informático que hace referencia a un programa o conjunto de
programas de cómputo, así como datos, procedimientos y pautas que permiten
realizar distintas tareas en un sistema informático.
10. API:
Interfaz de programación de aplicaciones. una serie de rutinas usadas por una
aplicación para gestionar generalmente servicios de bajo nivel.
11. Bug:
Término aplicado a los errores descubiertos al ejecutar cualquier programa
informático.
12. SQL:
Lenguaje especializado de programación que permite realizar consultas.
13. Interface:
Es el conjunto de conexión ya sea dos componentes de hardware, dos programas
o entre usuario y programa.
14. FTP:
Protocolo de transferencia de archivos permite a un usuario acceder y transferir
desde otro sistema de red.
Integración y programación móvil 12 | P á g i n a
Antecedentes
Los precursores
Por la década de las 70 y 80 compañías como Casio, Texas Instruments y
Hewlett-Packard crearon calculadoras programables. Tal es el caso de la HP-65, la
cual empaquetaba 9 registros de almacenamiento y tenía espacio para 100
instrucciones por teclado.
Newton
Por el año de 1993, Apple comercializo un dispositivo llamado Newton, que para
muchos representa el primer PDA. Este aparato contaba con interesantes funciones
entre ellas el reconocimiento de escritura y la sincronización con una computadora
de escritorio, aplicaciones para notas, contactos y fechas, calculadora, conversión
de unidades.
Ilustración 4 - HP-35
Fuente: Wikipedia
Ilustración 5 - Apple Newton
Fuente: Clipset
Integración y programación móvil 13 | P á g i n a
Palm y las PocketPC
Palm comenzó como una empresa dedicada al desarrollo de software en los 90,
generando aplicaciones de sincronización para Casio y HP, software de
reconocimiento de escritura para la Newton entre otras; sin embargo, poco después
crea el sistema operativo Palm Os.
IDE Mobile
Visual Studio 2005 con un proyecto para Windows Mobile
Cuando el uso de dispositivos móviles se hizo algo común, también la
programación de aplicaciones para estos se tomó más en serio, así diversas
compañías crearon entornos de programación o complementos a IDES existentes
y emuladores para permitir la creación de aplicaciones, entre ellos:
 Pda Toolbox,  HS Pascal,
 Satellite Forms,  Mobile Visual Basic
 Scotbuilder,  Embedded Visual Tools
 Palm Os Developer Studio,
Ilustración 7 - IDEs para Android
Fuente: Intellectsoft
Ilustración 6 - PocketPC,
fabricada por Acer
Fuente: Wikipedia
Integración y programación móvil 14 | P á g i n a
Java
En 1995 Sun Microsystemas presento el lenguaje de programación Java. Desde
su creación java se enfocaba en especificaciones esenciales para dispositivos de
bajo consumo y con la llegada de Java ME (Micro Edition), se establecieron las
bases para la creación de aplicaciones para dispositivos con recursos limitados.
Al día de hoy Java es uno de los lenguajes más utilizados a nivel mundial por lo
que invertir en su aprendizaje es altamente recomendado.
Ilustración 8 - Plataforma Java
Fuente: Wikipedia
Objective C
Corría el año 2006 y todo parecía normal:
BlackBerry con buena salud, las Pocket PC en
buen estado y Palm con salud suficiente, sin
embargo, en los laboratorios de Apple ya se
estaba preparando algo y era precisamente el
IPhone.
Java, Free Pascal, Ada y Lisp; además el componente Interface Builder se
encarga de la creación de interfaces de usuario.
Aunque en ese tiempo ya existían tiendas de aplicaciones para otras plataformas,
la tienda para el iPhone marco la pauta ya que todo estaba disponible desde una
aplicación embebida en el sistema, con lo cual las demás plataformas siguieron esta
tendencia.
Ilustración 9 - Código en Objective C
Fuente: LinkedIn
Integración y programación móvil 15 | P á g i n a
Android
Google siempre ha sido ambicioso y con gran visión, por
ello desde el año 2005 compró la compañía Android Inc. con
el firme objetivo de contar con un sistema operativo y el
consecuente desarrollo de dispositivos.
Desde sus inicios la programación se ha realizado en el
IDE Eclipse con un kit de desarrollo y plugin para cada
versión específica de la API, aunque también es posible
configura un entorno con NetBeans o IntelliJ IDEA. Como
lenguaje de programación se utiliza básicamente Java,
JavaScript, Basic y C, adicionalmente existe un entorno web
llamado Android Inventor, que sin necesidad de código se
pueden crear aplicaciones de mediana complejidad.
Ilustración 11 - Arquitectura del Sistema Operativo más usado del mundo
Fuente: Android Developers
Ilustración 10 - SmartPhone
con Android
Fuente: El Mundo
Integración y programación móvil 16 | P á g i n a
Estado Actual
La programación móvil ha sido muy usada, en este caso nos enfocaremos en la
educación.
La Universidad Politécnica Salesiana desarrollo un proyecto para apoyar el
aprendizaje de niños y niñas y despertar su interés por el estudio de la ciencia y
tecnología, todo esto basado en la experimentación y guías multimedia de
enseñanza.
Uno de los objetivos de esta implementación es diseñar e implementar una
aplicación para dispositivos Android para el marco del proyecto pequeñas y
pequeños científicos de la UPS.
DISEÑO E IMPLEMENTACIÓN DE UNA APLICACIÓN EN LA
EDUCACIÓN
Autor: Diego Fernando Quisi Peralta.
Ilustración 12 - Junta con padres de familia para presentar el proyecto
Integración y programación móvil 17 | P á g i n a
Justificación
La UPS está desarrollando un proyecto para apoyar el aprendizaje de niños y
niñas y despertar su interés por el estudio de la ciencia y tecnología todo esto
basado en la experimentación y guía multimedia de enseñanza.
Objetivos
 Diseñar implementar una aplicación para dispositivos Android para el marco
del proyecto “pequeñas y pequeños científicos de universalidad politécnica
salesiana”
 Desarrollar una app para Android que estará controlado por 1 o más módulos
de aprendizaje de los medios digitales.
 Generar una base de conocimiento sobre el desarrollo de proyectos Android.
 Realizar pruebas en diferentes tipos de dispositivos.
 Cargar la app de Google Play Store.
 Para hacer este tipo de software se requiere un tipo de estudios de la
tecnología a desarrollar.
 HTMLS para dispositivos móviles basándose CSS, DOM y JAVA.
Se requiere el estudio del entorno del desarrollo Android.
Ilustración 14 – Niños realizando las actividades Ilustración 13 – Aplicación del proyecto
Integración y programación móvil 18 | P á g i n a
Talleres realizados
Talleres realizados
Taller Escuela Cupo
Taller 1 Carlos Crespi 12 niños
Taller 2 Francisco Dávila 12 niñas
Taller 3 Carlos Crespi 12 niños
Taller 4 Francisco Dávila 12 niñas
Taller 5 Carlos Crespi 12 niños
Taller 6 Francisco Dávila 12 niñas
Taller 7 Carlos Crespi 12 niños
Taller 8 Francisco Dávila 12 niñas
Tabla 1 - Talleres realizados en la escuela Carlos Crespi y Francisco Dávila
Estadísticas del rendimiento de los niños
De acuerdo a lo observado se ha determinado un incremento del 48% en el
promedio del conocimiento de los niños y niñas con los temas abarcados. La
información recabada se presenta a partir de la comparación entre pre-test y el post-
test.
Ilustración 15 - Gráfico de los resultados académicos
Algo relevante a mencionar es la metodología empleada, ya que para el lograr el
resultado no se recurrió a enviar deberes, trabajos, ni estudiar en horas fueras del
taller.
El proyecto en el cual se trabajó, fue bien recibido por los centros educativos, los
cuales manifestaron que ha sido una experiencia -enriquecedora en el desarrollo
intelectual, creativo y emprendedor-
0%
10%
20%
30%
40%
50%
60%
Pre-test Post-test
10%
58%
Integración y programación móvil 19 | P á g i n a
DESARROLLO DE UNA APLICACIÓN QUE PERMITA
ADMINISTRAR PEDIDOS
Autor: José Ricardo Cajilima Alvarado.
Justificación
Con el surgimiento de los teléfonos inteligentes y el uso masivo que se hace con
ellos. Se aprovechará que la empresa hará entrega de tablets con sistema operativo
Android a sus agentes vendedores del área de perfumería para que realicen su
trabajo.
Ante ello se requiere una aplicación para Almacenes Juan Eljurí, específicamente
para la división de Perfumería que permitirá:
 Administrar los pedidos de una forma más rápida, sencilla y eficiente.
 Así mismo tener un control de sus agentes vendedores por parte de los
supervisores de ventas.
Ilustración 16 - Aplicación desarrollada para la gestión de pedidos en una división de
Perfumería
Integración y programación móvil 20 | P á g i n a
Objetivos
 Desarrollar una app para dispositivos móviles plataforma Android que
permite automatizar la gestión de pedidos y controlar rutas de los agentes
vendedores de almacenes Juan Eljuri Cia. Ltda., división Perfumería.
 Controlar con una aplicación móvil que permita reducir tiempos de
operación hasta su facturación, en la tarea de administración de pedidos.
 Proporcionar información actualizada de stock precios de los productos de
los agentes vendedores.
Procesos actuales
Ilustración 17 - Proceso actual que usa la división de perfumería para la entrega de un producto al usuario
Integración y programación móvil 21 | P á g i n a
Creación de la aplicación
 Se elaboraron diseños breves que sirven de referencia para la
implementación.
 Elaboración de diagramas de clases, secuencias, arquitectónico y
navegación.
 Elaboración de bocetos de las pantallas del sistema (prototipos).
 Fase de codificación y desarrollo.
 Fase de pruebas.
 Análisis de resultados.
 Documentación.
Ilustración 19 - Diseño para la creación de pedidos
Ilustración 20 - Diagrama de secuencia, Inicio de sesión
Ilustración 18 - Prototipo de Pantalla
Integración y programación móvil 22 | P á g i n a
Observaciones de la aplicación
Observaciones de la aplicación
N° Actividad Responsable Observaciones
1. Inicio de
sesión
Agente
vendedor
El logueo funciona correctamente, la
aplicación se demora un tiempo
considerable ya que tiene que cargar
toda la información en la base de datos
local.
2. Visualizar
catalogo
Agente
vendedor
La aplicación no se demora ya que los
datos se encuentran almacenados
localmente, se sugieren algunos
cambios.
3. Crear
pedido
Agente
vendedor
Se observa una fluidez al cargarse
pocos datos, pero cuando se carga
muchos artículos la aplicación tiende a
demorarse. El usuario manifiesta que
los pasos son muy intuitivos a la hora
de crear un pedido.
4. Modificar
pedido
Agente
vendedor
De igual manera los datos se cargan
rápidamente y los pasos son los
mismos que Crear el pedido, el usuario
no tuvo mayores dificultades.
5. Ayuda Agente
vendedor
La ayuda es de lectura por lo que no
hubo mayores inconvenientes. Se
sugieren agregar algunas
funcionalidades.
Tabla 2 – Observaciones de la aplicación
Integración y programación móvil 23 | P á g i n a
Planteamiento del problema
Identificación del problema
Caso 1 - ¿Es posible implementar las nuevas herramientas para profundizar en el
aprendizaje de niños y niñas sabiendo los problemas y situaciones externas que se
pueden presentar, además de la necesidad de contar obligatoriamente con un
dispositivo con conexión a internet?
Caso 2 - ¿Es posible mantener una aplicación con constantes actualizaciones e ir
mejorándola con nuevas funciones para los principales sistemas operativos móviles
y así satisfacer al usuario final en sus diferentes usos?
Objetivo
Mostrar la importancia de mantener una aplicación actualizada, ya que esto
involucra añadir nuevas funciones, corregir errores potenciales que involucren o
puedan dañar la privacidad del usuario final en las diferentes plataformas que esta
aplicación pueda ser descargada (App Store y Play Store).
En el tema de la educación, se busca fomentar el uso de las nuevas tecnologías
para el aprendizaje de los niños para un desarrollo integro sin caer en los peligros
que estas derivan, para ello debe haber una serie de restricciones en el dispositivo
para crear un ambiente apropiado para la enseñanza de los niños y niñas.
Justificación
Como todo sistema operativo, las aplicaciones también están expuestas a
errores, estos mismo tienen que ser abordados y corregidos, además es de gran
importancia estar a la vanguardia y agregar funciones útiles para que el usuario final
pueda hacer uso de ellas.
Integración y programación móvil 24 | P á g i n a
Estar modificando y corriendo una aplicación de la cual dependen muchas
personas requiere una gran responsabilidad, en el caso anterior, la aplicación se
encarga de administrar pedidos y controlar rutas de los vendedores de una división
de perfumería, que, si bien la aplicación cumple con el objetivo de administrar y
controlar, esta deberá ajustarse a las nuevas necesidades que surjan, por medio de
nuevas funciones, cambio de diseño, organización y ser amigable para con el
cliente.
Los errores potenciales pueden derivar a fugas de información y afectar
directamente a los usuarios, por ello debe estar en constante pruebas y analizando
los diversos comentarios por parte de los usuarios, las plataformas para albergar
las aplicaciones como la Google Play Store y App Store, permiten administrar los
comentarios fácilmente por medio de categorías y una puntuación general de esta
misma.
En caso de encontrar un error potencial, se deberá actuar conforme a su
protocolo preestablecido y en su caso informar a los usuarios cumpliendo con la
responsabilidad social de toda empresa.
En el caso de la educación, no hay gran diferencia; la aplicación debe estar en
constante actualización para agregar nuevo contenido y seguir en el interés de niños
y niñas, ofreciendo una interfaz amigable y fácil de usar.
Sin embargo, la problemática empleada en la aplicación también cobra gran
relevancia ya que muchas escuelas no tienen los recursos necesarios para adquirir
los dispositivos y contar con una conexión a internet, destacando que solo la
aplicación y sitio web que se brinda es de forma gratuita por lo que eso no conlleva
más gastos.
Por otro lado, omitiendo que las necesidades anteriores se formula otro problema
ya que los sistemas educativos están tan atrasados que ven como un peligro el uso
de estas tecnologías, por lo que requiere una gran y fuerte iniciativa para que más
escuelas implementen estas nuevas herramientas, y posteriormente una buena
capacitación para una buena aplicación de esta misma.
Integración y programación móvil 25 | P á g i n a
Como tecnología y herramienta para la enseñanza, también está expuesta a
peligros por ello debe estar en constante supervisión, ya que el dispositivo
independientemente de la aplicación, este mismo tiene más funciones las cuales
algunas no son recomendables para niños, como el libre acceso a internet y
plataformas de video.
Límites y restricciones
Limitantes
Caso 1:
 Necesidad de contar con dispositivos con acceso a internet.
 El poco conocimiento del potencial que puede brindar.
 El poco apoyo por parte del sector de la educación para su mejor
implementación.
 Su constante actualización y tiempo requerido.
 La capacitación constante para el aplicador.
Caso 2:
 El uso que se le puede dar.
 La adquisición de equipos.
 La capacitación a los trabajadores.
 La correcta implementación.
Restricciones
Caso 1:
 Los costos que puede requerir para adquirir el equipo necesario.
 El tiempo que puede llevar para implementarse correctamente.
Caso 2:
 Costos que puede conllevar tener una aplicación actualizada.
 Recursos que se necesitan para tener funcionando los servicios que esta
conlleva.
Integración y programación móvil 26 | P á g i n a
Marco Teórico
Dispositivos móviles
Los dispositivos móviles, se han catalogado como PDA (asistentes personales
digitales), por sus siglas en inglés, por otro la
En términos generales cuando se refiere a dispositivos móviles, prácticamente
se está refiriendo como los PDA (asistentes personales digitales), por sus siglas en
inglés, además de los Smartphones o teléfonos inteligentes.
Un PDA es una especie de computadora de mano que inicialmente fue diseñada
con el propósito de ser una agenda electrónica, pero actualmente es mucho más
que una agenda, ya que en estos dispositivos es posible navegar en la web, ver y
editar documentos, ver películas, entre otras cosas.
Por otro lado, los Smartphones son dispositivos que integran la funcionalidad de
un teléfono móvil y un PDA.
Sistemas operativos para dispositivos móviles
A continuación, se hace una breve descripción de los principales sistemas
operativos para dispositivos móviles.
Nombre del Sistema
Operativo
Descripción
 Android
Ilustración 21 - Logo de Android
Fuente: Wikipedia
Es un sistema operativo móvil desarrollado por
Google, basado en Kernel de Linux y otros softwares
de código abierto.
Fue diseñado para dispositivos móviles con pantalla
táctil, como teléfonos inteligentes, tabletas, relojes
inteligentes (Wear OS), automóviles (Android Auto) y
televisores (Android TV).
Integración y programación móvil 27 | P á g i n a
 iOS
Ilustración 22 - Logo de iOS
Fuente: Wikipedia
iOS es un sistema operativo móvil de la multinacional
Apple Inc. Originalmente desarrollado para el iPhone
(iPhone OS), después se ha usado en dispositivos
como el iPod touch y el iPad. No permite la
instalación de iOS en hardware de terceros.
Tabla 3 - Descripción de los dos principales Sistemas Operativos en Móviles
Fuente: Wikipedia
Cuota de mercadode los dos principales sistemas operativos en
móviles
Ilustración 23 - Gráfico de pastel que muestra la cuota de mercado de los dos principales S.O. en móviles
Fuente: Statista
Como se muestra en la gráfica de pastel Android domina el mercado de
Smartphones, siendo Android 8.1 como el más usado, sin embargo no es el más
actual, por otro lado se encuentra la versión 9.0 como una de las versiones más
recientes del sistema operativo de Google y sumando todas las versiones abarcan
16.07%
14.03%
13.83%
2.99%8.29%
6.23%
6.14%
4.72%
3.43%
18.27%
Sistemas Operativos Móviles
Android 8.1 Android 9.0 iOS 12.1 Android 6.0 Android 7.0
Android 7.1 iOS 12.2 Android 5.1 Android (-) Otros
Integración y programación móvil 28 | P á g i n a
un 59.19%, mientras que iOS se posiciona en el tercer lugar con un 19.97% y otros
SO con un 18.27%.
Programación en diferentes plataformas
La programación en dispositivos móviles se lleva a cabo en plataformas para
sistemas de escritorio, siendo Windows, Mac OS, Unix y Linux, las plataformas
usadas por los programadores, dejando en claro que, así como es posible
desarrollar en diversas plataformas, también es posible desarrollar en diversos
lenguajes de programación.
Ilustración 24 - Cuota de los principales Sistemas Operativos para ordenador
Fuente: Statista
Problemáticas de crear una aplicación
Crear una app, ¿es fácil o complicado?
La popularidad de los smartphones y la posibilidad de instalar cualquier app y
juego que queramos hace que el desarrollo de aplicaciones viva un gran momento,
si bien hay mucha competencia y cuesta mucho posicionarse en las tiendas
oficiales.
0.0%
10.0%
20.0%
30.0%
40.0%
50.0%
60.0%
70.0%
80.0%
90.0%
W I N D O W S
MA C O S
L I N U X
O T R O S
89.8%
4.3%
3.1%
2.9%
Integración y programación móvil 29 | P á g i n a
En la variedad está el gusto, pero desgraciadamente no todas las apps son igual
de buenas.
Las notificaciones
El mal uso o abuso de las notificaciones de las apps
móviles da para todo un artículo. Se trata de una
herramienta muy práctica para el usuario, porque le
permite enterarse de cosas sin necesidad de consultar la
app constantemente: mensajes, avisos, correos, ofertas
de última hora.
Las actualizaciones
Junto con las notificaciones, las actualizaciones son otro
de los problemas de las aplicaciones móviles actuales.
Por un lado, el tamaño de las mismas. ¿Realmente es
necesario que Facebook se actualice una vez al mes y la
actualización ocupe más de 100 MB? Caso aparte es el de
los juegos, donde pueden justificarse por la inclusión de
nuevos niveles o mejores gráficos.
Aplicaciones Vs. Páginas web
Al igual que ocurre con una página o sitio web, tener
tu propia aplicación móvil porque te sientes obligado a
tenerla puede ser contraproducente, ya que tu app
tiene que aportar algo.
Ilustración 25 - Fuente:
Elaboración de Enrique Dans
Ilustración 26 - Apartado de
actualizaciones en Google Play
Store
Fuente: Xataka
Ilustración 27 - App Vs. Pág. Web
Fuente: Duoo Solutions
Integración y programación móvil 30 | P á g i n a
Lenguajes de programación
Lenguajes en Android
Java
Según el índice de TIOBE, Java es el lenguaje de programación más popular a
partir de junio de 2017. Si quieres desarrollar apps Android, volverá probablemente
a Java. Tiene una comunidad de desarrolladores grandes y establecidas, y eso
significa que usted puede conseguir fácilmente la ayuda y soporte técnico.
Por lo tanto, cuando usted está desarrollando para móviles con Java, eres libre
llegar a cualquier tipo de aplicación que usted puede pensar. El único límite será tu
imaginación y el nivel de tus conocimientos de Java.
Ilustración 28 - Gran parte de Android, está desarrollado en Java
Fuente: Muy Computer
Kotlin
Kotlin fue diseñado y desarrollado por JetBrains,
la compañía checa, conocida por su popular IDE,
IntelliJ IDEA. Equipo Android de Google ha
anunciado recientemente que oficialmente se
añade soporte para el lenguaje de programación
de Kotlin.
Kotlin se desarrolló para abordar algunos de los problemas de Java. Según fans
de la lengua, sintaxis de Kotlin es más simple, más limpio y conduce a menos
consumo de recursos de código. Esto le ayuda a concentrarse más en solucionar el
problema, en lugar de luchar con sintaxis verbal. También, usted puede utilizar
Kotlin y Java juntos en el mismo proyecto, y hace realmente potente.
Ilustración 29 - Kotlin se ha convertido en el
leguaje preferido por Google, ante las
disputas legales con Oracle - Fuente: Xataka
Integración y programación móvil 31 | P á g i n a
Lenguajes iOS
Swift
Introducido en 2014 y declarado abierto en el año 2015,
Swift está rápidamente alcanzando con
desarrolladores móviles. Es muy popular,
especialmente entre las nuevas empresas de desarrollo
de iOS.
Apple ha añadido algunas características
geniales a este lenguaje, tales como la sintaxis
simplificada, la capacidad de localizar con precisión los
errores de programador, etcétera. Enormes esfuerzos de
Apple para promover Swift indican claramente que quiere que este nuevo lenguaje
para convertirse en el lenguaje de programación convencional para su ecosistema
de aplicaciones.
Objective-C
Objective-C fue el lenguaje de desarrollo original para iOS. Mientras que la lengua
rápida introducida recientemente es el futuro del desarrollo de iOS, muchos
proyectos avanzados todavía dependen de Objective-C. Así que la transición de
Objective-C a Swift se espera que sea algo lento, y puede que necesite tanto de
ellos en algunos proyectos, al menos por el momento.
Lenguajes Cross-Platform
JavaScript
JavaScript tiene una larga historia que se remonta a los inicios de la World Wide
Web. Un lenguaje muy popular front-end y el servidor, permite los desarrolladores
web hacer todo lo posible de mejorar la experiencia del usuario de sus sitios web a
la construcción de aplicaciones web completa.
Ilustración 30 - Fuente: Wikipedia
Ilustración 31 - Fuente: Wikipedia
Integración y programación móvil 32 | P á g i n a
Hoy en día, hay varios frameworks de JavaScript dirigidos específicamente a
plataformas de desarrollo móvil, como Ionic 2 y React Native. Es muy fácil de
desarrollar aplicaciones móviles multiplataforma con estos frameworks y librerías.
Esto significa que sólo tienes que escribir una sola versión de su aplicación, y
funcionará en iOS o Android.
JAVASCRIPT
Fundamentos de JavaScript
TypeScript
TypeScript es un superconjunto de JavaScript y ofrece mayor seguridad
mediante la adición de tipificación estática opcional. También ofrece mejor soporte
para el desarrollo de aplicaciones a gran escala. Desarrollado y mantenido por
Microsoft, TypeScript permite a los desarrolladores a escribir aplicaciones móviles
multiplataforma utilizando frameworks como NativeScript.
Otros Lenguajes
C#
C# es el idioma de Windows Mobile. Es muy similar a C++ y Java. Microsoft ha
adoptado algunas de las características de Java para simplificar su arquitectura,
manteniendo el C++ como diseño. También tiene una gran y activa comunidad de
desarrolladores que siempre es amable y servicial.
C
C es el segundo idioma en el índice TIOBE, y al igual que Java, su comunidad
está llena de los desarrolladores experimentados que podrían ofrecer valiosos
consejos sobre cómo escribir código libre de errores.
Integración y programación móvil 33 | P á g i n a
Creado por Dennis Ritchie, mientras trabajaba para laboratorios Bell, C es un
lenguaje ampliamente adoptado y potente que le permite manipular directamente
las operaciones de bajo nivel de un equipo. Si usted desea utilizar Android NDK (Kit
de desarrollo nativo), necesitará familiarizarse con el lenguaje C.
C++
Si estás familiarizado con C, entonces realmente disfrutará de lectura y escritura
de código de C++. C++ es una extensión de C, con más características y soporte
para programación orientada a objetos. C++ es también un idioma preferido de los
desarrolladores de Android NDK. Puede utilizar C++ para desarrollar aplicaciones
de Windows Mobile también. C++ va cabeza a cabeza con Java en el campo de
desarrollo de software, y realmente vale la pena dominar.
Python
Python es otra lengua popular que es fácil de aprender y fácil de leer. Los
creadores de la lengua han realizado esfuerzos adicionales para mantener la
sintaxis simple y claro posible. Esto realmente ayuda a los desarrolladores novatos
mantener altos niveles de productividad, desde el primer día. Si usted está cómodo
con la escritura de código Python, puede utilizar marcos como Kivy para desarrollar
aplicaciones móviles multiplataforma.
Ruby
Ruby es un lenguaje de scripting orientado a objetos, influenciado por Ada, C++,
Perl, Python y Lisp. RubyMotion es un gran marco para el desarrollo de aplicaciones
móviles nativas y multiplataforma en Ruby. Es bastante fácil de aprender Ruby,
gracias a su elegante sintaxis se centra en la simplicidad y productividad.
Integración y programación móvil 34 | P á g i n a
Lenguajes de programación
Lenguajes de programación más usados
Posición Tendencia Lenguaje de
programación
Cuota Cambio
1 - Java 15.932% +2.66%
2 - C 14.282% +4.12%
3 ▲ Python 8.376% +4.60%
4 ▼ C++ 7.562% +2.84%
5 ▲ Visual Basic .NET 7.127% +4.66%
6 ▼ C# 3.455% +0.63%
7 ▼ JavaScript 3.063% +0.59%
8 ▲ PHP 2.442% +0.85%
9 ▲ SQL 2.184% +2.18%
10 ▲ Objective-C 1.477%
11 ▲ Delphi/Object Pascal 1.396% +0.00%
12 ▲ Assembly language 1.371% -0.10%
13 ▼ MATLAB 1.283% -0.29%
14 ▼ Swift 1.220% -0.35%
15 ▲ Go 1.189% -0.20%
16 ▼ R 1.111% -0.80%
17 ▼ Ruby 1.109% -0.32%
18 ▼ Perl 1.013% -0.42%
19 ▲ Visual Basic 0.979% -0.37%
20 ▼ PL/SQL 0.844% -0.52%
Tabla 4 - Lenguajes de programación más usados
Fuente: CodinHub
En móviles
Java
Kotlin
Swift
Objective-C
JavaScript
TypeScript
C#
C
C++
Python
Ruby
Integración y programación móvil 35 | P á g i n a
Teoría
Teoría de lenguajes de programación
Se encarga del diseño, implementación, análisis, caracterización y clasificación
de lenguajes de programación y sus características. Es un campo multidisciplinario
que depende de (y en algunos casos afecta a) las matemáticas, la ingeniería del
software, la lingüística e incluso las ciencias cognitivas.
La teoría de lenguajes de programación es una rama de la ciencia de la
computación que se encarga del diseño, implementación, análisis, caracterización
y clasificación de lenguajes de programación y sus características.
Un lenguaje de programación es un conjunto de símbolos y de reglas que se usan
para expresar algoritmos. Igualmente, sirven para escribir programas que permiten
la comunicación usuaria/máquina.
Algunos otros eventos claves en la historia de la teoría de lenguajes de
programación desde entonces:
 En la década de 1950, Noam Chomsky desarrolló la Jerarquía de Chomsky
en el campo de la lingüística que impactó directamente a la teoría de lenguajes de
programación y otras ramas de la informática.
 En la década de 1960, el lenguaje Simula fue desarrollado por Ole-Johan
Dahl y Kristen Nygaard; muchos consideran que es el primero lenguaje orientado a
objetos; Simula también introdujo el concepto de corrutinas.
 Durante 1970, Un pequeño equipo de científico en Xerox PARC elaboran
Smalltalk, un lenguaje orientado a objetos muy conocido por su novedoso entorno
de desarrollo.
 Sussman y Steele desarrollan el lenguaje de programación Scheme, un
dialecto de Lisp que incorpora Ámbitos léxicos, un espacio de nombres unificado, y
elementos del modelo Actor.
 Backus, en la conferencia del Premio Turing de 1977, asedió el estado actual
de los lenguajes industriales y propuso una nueva clase de lenguajes de
programación ahora conocidos como lenguajes de programación funcional.
Integración y programación móvil 36 | P á g i n a
 La aparición del process calculi, como el cálculo de sistemas comunicantes
de Robin Milner, y el modelo de Comunicación secuencial de procesos de C. A. R.
Hoare, así como modelos similares de concurrencia como el Modelo Actor de Carl
Hewitt.
 La aplicación de la teoría de tipos como una disciplina a los lenguajes de
programación, liderada por Milner; esta aplicación ha conducido a un tremendo
avance en la teoría de tipos en cuestión de años.
 En la década de 1990, Philip Wadler introdujo el uso de monads para
estructurar programas escritos en lenguajes de programación funcional.
Teoría de los compiladores
En la comunicación hombre-máquina existe una dificultad real: las computadoras
operan sobre bits (ceros y unos) y registros y los hombres se entienden por medio
de idiomas (lenguaje natural), o utilizan una noción científica determinada por el
área de problemas en que trabaja, entre otras vías.
Un programa fuente escrito en un lenguaje de programación necesita pasar por
un proceso de conversión al lenguaje de máquina que entiende la computadora, a
ese proceso de conversión del programa fuente al lenguaje o código de máquina se
le llama proceso de compilación o simplemente compilación. Y al programa capaz
de realizar ese proceso se le llama compilador o traductor.
Ilustración 31 - Compilador
Integración y programación móvil 37 | P á g i n a
Estructura de un compilador
El trabajo de un compilador consiste en tomar la cadena fuente del programa,
determinar si es sintácticamente válida y, a la vez, generar un programa equivalente
en un lenguaje que la computadora entienda. El trabajo del compilador se puede
dividir en diferentes partes:
1. Análisis lexicológico (scanner)
2. Análisis sintáctico (parser)
3. Análisis semántico
4. Generación de código intermedio
5. Optimización de código intermedio
6. Generación de código ejecutable
7. Tabla de símbolos
8. Gestión de errores
Análisis lexicológico
El analizador lexicológico o scanner se encarga de tomarlos y agruparlos en
entidades sintácticas simples o elementales denominadas tokens o lexemas. Las
categorías de tokens pueden variar de un lenguaje a otro, pero en general se
distinguen las siguientes:
 Palabras reservadas
 Identificadores
 Constantes numéricas y literales
 Operadores
Integración y programación móvil 38 | P á g i n a
Resultados esperados
Con este proyecto se espera que:
 El uso de las nuevas tecnologías llegue a más escuelas para el uso en la
educación y aprendizaje de los niños y niñas.
 Aprender la importancia de la programación y todo lo que nos puede brindar.
 Agilizar el trabajo con el uso de aplicaciones para resolver situaciones
cotidianas.
 Usar todo el potencial que nos puede brindar un dispositivo móvil
 Brindar una idea clara por medio de conceptos y ejemplos en lo que se puede
usar la programación para móviles.
Conclusión
En conclusión, se puede determinar que la programación móvil es un pilar
fundamental en la sociedad moderna ya que hay un excesivo uso de los dispositivos
móviles, los cuales cuentan con una increíble capacidad para ejecutar casi todo tipo
de aplicaciones, distinguido por su fácil alcance, uso y accesibilidad para los
usuarios.
Sin embargo, un dispositivo móvil o smartphone no es nada si no tiene
aplicaciones descargadas y aquí es donde entra la programación orientada a los
móviles o programación móvil, que se encarga se crear las aplicaciones que tanto
usamos día tras día, ya sea para estudiar, trabajar o simplemente para pasar el rato.
Ante ello es importante saber todo el potencial que nos puede brindar una
simple aplicación porque como lo pudimos leer anteriormente, cuando se aplico en
la educación, esta tuvo buenos resultados, así mismo en el trabajo que termino
agilizando actividades para un bien en común y por supuesto en la satisfacción de
los usuarios.
Integración y programación móvil 39 | P á g i n a
Es importante mencionar que el uso de los dispositivos móviles como
herramienta de aprendizaje no sustituye a cualquier otro medio de aprendizaje
tradicional, ya que estos se consideran un recurso adicional de apoyo y
enriquecimiento de los procesos de enseñanza-aprendizaje, en los que el
estudiante es el principal constructor de su conocimiento.
Finalmente, el uso de dispositivos móviles para la educación constituye una
oportunidad para ampliar la posibilidad de que los alumnos puedan construir
colaborativamente su conocimiento a través de estas TIC, y así desarrollar sus
habilidades y actitudes.
Integración y programación móvil 40 | P á g i n a
Referencias
Alvarado, J. R. (2015). Desarrollo de una aplicación,para dispositivos móvilesque permita
administrar pedidos (Vol. II). (P. Ingavelez, Ed.) Cuenca, Ecuador: Universidad
Politécnica Salesiana. Recuperado el 16 de noviembre de 2019, de
https://dspace.ups.edu.ec/bitstream/123456789/7951/1/UPS-CT004811.pdf
Andrey, B. (Recuperado el 20 de Enero de 2012). drdobbs.com. Obtenido de drdobbs.com:
https://web.archive.org/web/20151022062235/http://www.drdobbs.com/jvm/language-of-
the-month-kotlin/232600836/. Consultado el 26 de Noviembre del 2019
Cobo, J. G. (2013). TFC Desarrollo de Aplicaciones Móviles. Palma de Mallorca. Recuperado el 25
de noviembre de 2019, de
http://openaccess.uoc.edu/webapps/o2/bitstream/10609/18528/6/jugarridocoTFC0113memo
ria.pdf
elearning. (Realizado el 16 de Septiembre de 2019). view.genial.ly. Obtenido de view.genial.ly:
https://view.genial.ly/57eaa8fd89ef5b0fac3cb1f7/interactive-content-historia-de-
dispositivos/. Consultado el 26 de Noviembre del 2019
Fernández, R. (18 de octubre de 2019). Statista. Obtenido de
https://es.statista.com/estadisticas/1060664/cuota-de-mercado-mundial-de-so-para-moviles/
Fernández, R. (18 de octubre de 2019). Statista. Obtenido de
https://es.statista.com/estadisticas/576870/cuota-de-mercado-mundial-de-los-sistemas-
operativos/
Germán, N. E. (Diciembre de 2006). Programación de aplicacionespara dispositivos móviles.
Obtenido de
http://ri.ues.edu.sv/3193/1/Programaci%C3%B3n%20de%20aplicaciones%20para%20disp
ositivos%20m%C3%B3viles.pdf
Margaret,R. (s.f.). WhatIs.com. Obtenido de WhatIs.com:
https://searchdatacenter.techtarget.com/es/definicion/Desarrollo-de-aplicaciones-moviles/.
Consultado el 26 de Noviembre del 2019
Moreno, J. (23 de julio de 2019). CodingHub.Obtenido de https://codinghub.es/lenguajes-de-
programacion-mas-usados
Integración y programación móvil 41 | P á g i n a
Peralta,D. F. (2012). Diseño e Implementación de una Aplicación para la educación (Vol. II). (V.
R. Bykbaev, Ed.) Cuenca: Universidad Politécnica Salesiana. Recuperado el 26 de
noviembre de 2019, de https://dspace.ups.edu.ec/bitstream/123456789/3298/1/UPS-
CT002537.pdf
Raffino, M. E. (5 de Diciembre de 2018). Concepto.de.Recuperado el11 de Noviembre de 2019,
de Concepto.de: https://concepto.de/programacion/
Raffino, M. E. (27 de Noviembre de 2018). Concepto.de. Recuperado el11 de Noviembre de 2019,
de Concepto.de: https://concepto.de/software/
Raffino, M. E. (27 de Febrero de 2019). Concepto.de.Recuperado el11 de Noviembre de 2019, de
Concepto.de: https://concepto.de/algoritmo-en-informatica/
Raya,A. (23 de Enero de 2019). www.elespanol.com. Obtenido de www.elespanol.com:
https://www.elespanol.com/omicrono/tecnologia/20190123/lenguaje-programacion-fisico-
permite-ciegos-propios-programas/370714482_0.html/. Consultado el 26 de Noviembre del
2019
Sauledo, Z. (Ultima edicion 10 de 01 de 2008). arpentechnologies.com. Recuperado el26 de 11 de
2019, de arpentechnologies.com: https://arpentechnologies.com/es/blog/aplicaciones-
movil/kotlin-nuevo-lenguaje-programacion-android/
Siripathi, S. (24 de julio de 2017). Envato tuts+. Obtenido de
https://code.tutsplus.com/es/articles/mobile-development-languages--cms-29138
Wikipedia. (Junio de 2019). Wikipedia. Obtenido de
https://es.wikipedia.org/wiki/Android#Aplicaciones
Wikipedia. (noviembre de 2019). Wikipedia. Obtenido de
https://es.wikipedia.org/wiki/IOS#Kit_de_desarrollo

Más contenido relacionado

Similar a Integración y programación móvil

Redes sociales - Universidad Peruana Unión 2013
Redes sociales - Universidad Peruana Unión 2013Redes sociales - Universidad Peruana Unión 2013
Redes sociales - Universidad Peruana Unión 2013lobi7o
 
USOS EDUCATIVOS DE LAS TIC
USOS EDUCATIVOS DE LAS TIC USOS EDUCATIVOS DE LAS TIC
USOS EDUCATIVOS DE LAS TIC Paola Sanchez
 
Proyecto de herramientas tecnológicas para la administración educativa
Proyecto de herramientas tecnológicas para la administración educativaProyecto de herramientas tecnológicas para la administración educativa
Proyecto de herramientas tecnológicas para la administración educativaOlman Salazar
 
Manual buen uso_internet_es
Manual buen uso_internet_esManual buen uso_internet_es
Manual buen uso_internet_esosorvilo
 
Avances de las tic en america latina y el caribe
Avances de las tic en america latina y el caribeAvances de las tic en america latina y el caribe
Avances de las tic en america latina y el caribeJose Carlos
 
Colmercedes, matanza version 1
Colmercedes, matanza version 1Colmercedes, matanza version 1
Colmercedes, matanza version 1mariateron
 
Relacion entre didactica en nivel superior y tics
Relacion entre didactica en nivel superior y ticsRelacion entre didactica en nivel superior y tics
Relacion entre didactica en nivel superior y ticsANALIESTEVEZ
 
Formación de Docentes en Tic.pdf
Formación de Docentes en Tic.pdfFormación de Docentes en Tic.pdf
Formación de Docentes en Tic.pdfMiguelMora590212
 
Guia aprendizaje digital con ipad
Guia aprendizaje digital con ipadGuia aprendizaje digital con ipad
Guia aprendizaje digital con ipadMarta Montoro
 
Trabajo 11 utilizacion de internet
Trabajo 11 utilizacion de internetTrabajo 11 utilizacion de internet
Trabajo 11 utilizacion de interneterikaselenacoronel
 
Proyecto final-aplicacion en-java_telepro
Proyecto final-aplicacion en-java_teleproProyecto final-aplicacion en-java_telepro
Proyecto final-aplicacion en-java_teleproElaynePajares
 

Similar a Integración y programación móvil (20)

Redes sociales - Universidad Peruana Unión 2013
Redes sociales - Universidad Peruana Unión 2013Redes sociales - Universidad Peruana Unión 2013
Redes sociales - Universidad Peruana Unión 2013
 
USOS EDUCATIVOS DE LAS TIC
USOS EDUCATIVOS DE LAS TIC USOS EDUCATIVOS DE LAS TIC
USOS EDUCATIVOS DE LAS TIC
 
Proyecto de herramientas tecnológicas para la administración educativa
Proyecto de herramientas tecnológicas para la administración educativaProyecto de herramientas tecnológicas para la administración educativa
Proyecto de herramientas tecnológicas para la administración educativa
 
Manual buen uso_internet_es
Manual buen uso_internet_esManual buen uso_internet_es
Manual buen uso_internet_es
 
Avances de las tic en america latina y el caribe
Avances de las tic en america latina y el caribeAvances de las tic en america latina y el caribe
Avances de las tic en america latina y el caribe
 
Anteproyecto gobierno electronico
Anteproyecto gobierno electronicoAnteproyecto gobierno electronico
Anteproyecto gobierno electronico
 
Colmercedes, matanza version 1
Colmercedes, matanza version 1Colmercedes, matanza version 1
Colmercedes, matanza version 1
 
Relacion entre didactica en nivel superior y tics
Relacion entre didactica en nivel superior y ticsRelacion entre didactica en nivel superior y tics
Relacion entre didactica en nivel superior y tics
 
KESP_U1_A1_LPA.pdf
KESP_U1_A1_LPA.pdfKESP_U1_A1_LPA.pdf
KESP_U1_A1_LPA.pdf
 
Proyecto de area 2013.
Proyecto de area 2013.Proyecto de area 2013.
Proyecto de area 2013.
 
TRABAJO INTERNET
TRABAJO INTERNET TRABAJO INTERNET
TRABAJO INTERNET
 
Formación de Docentes en Tic.pdf
Formación de Docentes en Tic.pdfFormación de Docentes en Tic.pdf
Formación de Docentes en Tic.pdf
 
Guia práctica uso tablet en down
Guia práctica uso tablet en downGuia práctica uso tablet en down
Guia práctica uso tablet en down
 
Guia aprendizaje digital con ipad
Guia aprendizaje digital con ipadGuia aprendizaje digital con ipad
Guia aprendizaje digital con ipad
 
Trabajo 11 utilizacion de internet
Trabajo 11 utilizacion de internetTrabajo 11 utilizacion de internet
Trabajo 11 utilizacion de internet
 
servicios en interner
servicios en internerservicios en interner
servicios en interner
 
Monografia word
Monografia wordMonografia word
Monografia word
 
Sistema.o. celinda
Sistema.o.   celindaSistema.o.   celinda
Sistema.o. celinda
 
Proyecto final-aplicacion en-java_telepro
Proyecto final-aplicacion en-java_teleproProyecto final-aplicacion en-java_telepro
Proyecto final-aplicacion en-java_telepro
 
Proyecto Final
Proyecto FinalProyecto Final
Proyecto Final
 

Último

PRESENTACION DE LAS PLAGAS Y ENFERMEDADES DEL PALTO
PRESENTACION DE LAS PLAGAS Y ENFERMEDADES DEL PALTOPRESENTACION DE LAS PLAGAS Y ENFERMEDADES DEL PALTO
PRESENTACION DE LAS PLAGAS Y ENFERMEDADES DEL PALTOwillanpedrazaperez
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEduardoBriones22
 
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...WeslinDarguinHernand
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.pptjacnuevarisaralda22
 
Mecatronica Automotriz .pdf
Mecatronica Automotriz              .pdfMecatronica Automotriz              .pdf
Mecatronica Automotriz .pdfleonardocahua1
 
Análisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECOAnálisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECOFernando Bravo
 
INFORME de pregrado ingenieria de vias.pdf
INFORME de pregrado ingenieria de vias.pdfINFORME de pregrado ingenieria de vias.pdf
INFORME de pregrado ingenieria de vias.pdfoctaviosalazar18
 
Presentacion de la ganaderia en la región
Presentacion de la ganaderia en la regiónPresentacion de la ganaderia en la región
Presentacion de la ganaderia en la regiónmaz12629
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Dr. Edwin Hernandez
 
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALSESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALEdwinC23
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATevercoyla
 
Video sustentación GA2- 240201528-AA3-EV01.pptx
Video sustentación GA2- 240201528-AA3-EV01.pptxVideo sustentación GA2- 240201528-AA3-EV01.pptx
Video sustentación GA2- 240201528-AA3-EV01.pptxcarlosEspaaGarcia
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologicaJUDITHYEMELINHUARIPA
 
Sistemas de Ecuaciones no lineales-1.pptx
Sistemas de Ecuaciones no lineales-1.pptxSistemas de Ecuaciones no lineales-1.pptx
Sistemas de Ecuaciones no lineales-1.pptx170766
 
sistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gstsistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gstDavidRojas870673
 
2024 GUIA PRACTICAS MICROBIOLOGIA- UNA 2017 (1).pdf
2024 GUIA PRACTICAS MICROBIOLOGIA- UNA 2017 (1).pdf2024 GUIA PRACTICAS MICROBIOLOGIA- UNA 2017 (1).pdf
2024 GUIA PRACTICAS MICROBIOLOGIA- UNA 2017 (1).pdfDavidTicona31
 
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdfNTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdfELIZABETHCRUZVALENCI
 
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptxEFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptxfranklingerardoloma
 
metodos de fitomejoramiento en la aolicacion de plantas
metodos de fitomejoramiento en la aolicacion de plantasmetodos de fitomejoramiento en la aolicacion de plantas
metodos de fitomejoramiento en la aolicacion de plantasGraciaMatute1
 

Último (20)

PRESENTACION DE LAS PLAGAS Y ENFERMEDADES DEL PALTO
PRESENTACION DE LAS PLAGAS Y ENFERMEDADES DEL PALTOPRESENTACION DE LAS PLAGAS Y ENFERMEDADES DEL PALTO
PRESENTACION DE LAS PLAGAS Y ENFERMEDADES DEL PALTO
 
422382393-Curso-de-Tableros-Electricos.pptx
422382393-Curso-de-Tableros-Electricos.pptx422382393-Curso-de-Tableros-Electricos.pptx
422382393-Curso-de-Tableros-Electricos.pptx
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
 
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
“Análisis comparativo de viscosidad entre los fluidos de yogurt natural, acei...
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
Mecatronica Automotriz .pdf
Mecatronica Automotriz              .pdfMecatronica Automotriz              .pdf
Mecatronica Automotriz .pdf
 
Análisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECOAnálisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECO
 
INFORME de pregrado ingenieria de vias.pdf
INFORME de pregrado ingenieria de vias.pdfINFORME de pregrado ingenieria de vias.pdf
INFORME de pregrado ingenieria de vias.pdf
 
Presentacion de la ganaderia en la región
Presentacion de la ganaderia en la regiónPresentacion de la ganaderia en la región
Presentacion de la ganaderia en la región
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...
 
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONALSESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
SESION 11 SUPERVISOR SSOMA SEGURIDAD Y SALUD OCUPACIONAL
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
 
Video sustentación GA2- 240201528-AA3-EV01.pptx
Video sustentación GA2- 240201528-AA3-EV01.pptxVideo sustentación GA2- 240201528-AA3-EV01.pptx
Video sustentación GA2- 240201528-AA3-EV01.pptx
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica
 
Sistemas de Ecuaciones no lineales-1.pptx
Sistemas de Ecuaciones no lineales-1.pptxSistemas de Ecuaciones no lineales-1.pptx
Sistemas de Ecuaciones no lineales-1.pptx
 
sistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gstsistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gst
 
2024 GUIA PRACTICAS MICROBIOLOGIA- UNA 2017 (1).pdf
2024 GUIA PRACTICAS MICROBIOLOGIA- UNA 2017 (1).pdf2024 GUIA PRACTICAS MICROBIOLOGIA- UNA 2017 (1).pdf
2024 GUIA PRACTICAS MICROBIOLOGIA- UNA 2017 (1).pdf
 
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdfNTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
NTC 3883 análisis sensorial. metodología. prueba duo-trio.pdf
 
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptxEFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
EFICIENCIA ENERGETICA-ISO50001_INTEC_2.pptx
 
metodos de fitomejoramiento en la aolicacion de plantas
metodos de fitomejoramiento en la aolicacion de plantasmetodos de fitomejoramiento en la aolicacion de plantas
metodos de fitomejoramiento en la aolicacion de plantas
 

Integración y programación móvil

  • 1. TECNOLÓGICO NACIONAL DE MÉXICO InstitutoTecnológicode Saltillo INTEGRACIÓN Y PROGRAMACIÓN MÓVIL INGENIERÍA EN SISTEMAS COMPUTACIONALES FUNDAMENTOS DE INVESTIGACIÓN EDUARDO CONTRERAS DELGADO.  MARIO ORLANDO TORRES SALAZAR.  KERIM DAVID BELMONTES LLANAS.  BRANDON ALEXIS PRADO CASTRO. SALTILLO, COAHUILA DEZARAGOZA, MÉXICO. NOVIEMBREDE2019.
  • 2. Integración y programación móvil 1 | P á g i n a Índice Resumen.................................................................................................................................. 4 Objetivo general.................................................................................................................. 4 Palabras clave ..................................................................................................................... 4 Hipótesis general................................................................................................................. 5 Síntesis ............................................................................................................................... 5 Introducción............................................................................................................................. 8 Alcance............................................................................................................................... 9 Definiciones.......................................................................................................................10 Antecedentes.....................................................................................................................12 Estado Actual...........................................................................................................................16 -Diseñoe implementación de una aplicación en laeducación................................................16 Justificación ..................................................................................................................16 Objetivos......................................................................................................................17 Estadísticas del rendimiento de los niños........................................................................18 -Desarrollo de una aplicación que permita administrar pedidos ............................................19 Justificación ..................................................................................................................19 Objetivos......................................................................................................................20 Creación de la aplicación................................................................................................21 Observaciones de la aplicación.......................................................................................22 Planteamiento del problema....................................................................................................23 Identificación del problema................................................................................................23 Objetivo............................................................................................................................23 Justificación.......................................................................................................................23 Límites y restricciones........................................................................................................25 Marco Teórico .........................................................................................................................26 Dispositivos móviles...........................................................................................................26 Sistemas operativos para dispositivos móviles.....................................................................26 Cuota de mercado de los dos principales sistemas operativosen móviles .............................27 Programaciónen diferentes plataformas ............................................................................28 Problemáticas de crear una aplicación.................................................................................28 -Lenguajes de programación ...............................................................................................30 Lenguajes en Android..................................................................................................30
  • 3. Integración y programación móvil 2 | P á g i n a Lenguajes iOS.............................................................................................................31 Lenguajes Cross-Platform............................................................................................31 Otros Lenguajes..........................................................................................................32 Teoría......................................................................................................................................35 Teoría de lenguajes de programación ..................................................................................35 Teoría de los compiladores..................................................................................................36 Resultadosesperados…………………………………………………………………………………………………………..…..…38 Conclusión...............................................................................................................................38 Referencias..............................................................................................................................40 Índice de cuadros Tabla 1 - Talleres realizados en la escuela Carlos Crespi y Francisco Dávila __________________18 Tabla 2 - Observaciones de la aplicación ______________________________________________22 Tabla 3 - Descripción de los dos principales Sistemas Operativos en Móviles ________________27 Tabla 4 - Lenguajes de programación más usados_______________________________________34 Índice de imágenes Ilustración 1 – Mini Nurse-Lite--------------------------------------------------------------------------------6 Ilustración 2 – 3D Anatomy Learning------------------------------------------------------------------------7 Ilustración 3 - Epocrates---------------------------------------------------------------------------------------7 Ilustración 4 - HP-35------------------------------------------------------------------------------------------ 12 Ilustración 5 - Apple Newton ------------------------------------------------------------------------------- 12 Ilustración 6 - PocketPC, fabricada por Acer-------------------------------------------------------------- 13 Ilustración 7 - IDEs para Android--------------------------------------------------------------------------- 13 Ilustración 8 - Plataforma Java----------------------------------------------------------------------------- 14 Ilustración 9 - Código en Objective C ---------------------------------------------------------------------- 14 Ilustración 10 - SmartPhone con Android----------------------------------------------------------------- 15 Ilustración 11 - Arquitectura del Sistema Operativo más usado del mundo------------------------- 15 Ilustración 12 - Junta con padres de familia para presentar el proyecto----------------------------- 16 Ilustración 13 – Niños realizando las actividades-------------------------------------------------------- 17
  • 4. Integración y programación móvil 3 | P á g i n a Ilustración 14 – Aplicación del proyecto ------------------------------------------------------------------ 17 Ilustración 15 - Gráfico de los resultados académicos -------------------------------------------------- 18 Ilustración 16 - Aplicación desarrollada para la gestión de pedidos---------------------------------- 19 Ilustración 17 - Proceso actual que usa la división de perfumería------------------------------------- 20 Ilustración 18 - Prototipo de Pantalla --------------------------------------------------------------------- 21 Ilustración 19 - Diseño para la creación de pedidos----------------------------------------------------- 21 Ilustración 20 - Diagrama de secuencia, Inicio de sesión ----------------------------------------------- 21 Ilustración 21 - Logo de Android --------------------------------------------------------------------------- 26 Ilustración 22 - Logo de iOS--------------------------------------------------------------------------------- 27 Ilustración 23 - Cuota de mercado de los dos principales S.O. en móviles --------------------------- 27 Ilustración 24 - Cuota de los principales Sistemas Operativos para ordenador --------------------- 28 Ilustración 25-------------------------------------------------------------------------------------------------- 29 Ilustración 26 - Apartado de actualizaciones en Google Play Store----------------------------------- 29 Ilustración 27 - App Vs. Pág. Web-------------------------------------------------------------------------- 29 Ilustración 28 - Gran parte de Android, está desarrollado en Java------------------------------------ 30 Ilustración 29 - Kotlin se ha convertido en el leguaje preferido por Google ------------------------- 30 Ilustración 30-------------------------------------------------------------------------------------------------- 31 Ilustración31 - Compilador-------------------------------------------------------------------------------------------36
  • 5. Integración y programación móvil 4 | P á g i n a Resumen os avances en las ciencias informáticas han sido muy acelerados, los dispositivos móviles en la actualidad están presentes prácticamente en cualquier rincón a donde vayamos. Hace no mucho tiempo resultaba complejo construir aplicaciones para ello, hoy en día es relativamente sencillo desarrollar programas, basta tomar algo de la abundante literatura existente, elegir un lenguaje de programación y descargar el software necesario que permita la instalación de desarrollo apropiado para dicha actividad. Hoy en día las principales empresas que dominan el mercado son Google y Apple con sus respectivas plataformas para dispositivos móviles: Android y iOS, las cuales además del desarrollo de aplicaciones daban la opción de publicar dichas apps para que el usuario final pudiera comprarlas o descargarlas directamente en su dispositivo por medio de la App Store y Play Store. Objetivo general ar a conocer las diferentes herramientas utilizadas para el desarrollo de las aplicaciones que conocemos en hoy en día, además de la aplicación de estas mismas para los diferentes ámbitos de la vida cómo: el estudio, el trabajo, el ocio, etc. Y así simplificar nuestra vida por medio de las nuevas herramientas. Palabras clave Programación en dispositivos móviles, Android, iOS, software, lenguajes de programación, compiladores. L D
  • 6. Integración y programación móvil 5 | P á g i n a Hipótesis general En este proyecto se dará a conocer el cuan problemático es el realizar una aplicación para dispositivos móviles y a su vez observar el sí es más rentable una aplicación móvil o utilizar algún otro medio, en el sentido de observar el por qué la aplicación móvil va complicando el espacio de almacenamiento en el dispositivo móvil en cuestión, a comparación de cuando se crean aplicaciones fijas sin necesidades de actualizaciones que ya tienen definido y resuelto ese problema al ser una aplicación la cual está ya definida con un propósito a realizar, haciendo que las aplicaciones ya terminadas sean mejores en el sentido de facilitar al usuario su uso pero esto a su vez provoca que también sean algo tediosas para el mismo por el tema del espacio ya antes hablado. Comprobando con otros trabajos de investigación podemos observar que las aplicaciones móviles son más recomendadas ya que son más accesibles para los usuarios. Síntesis En el sector educativo ahora es necesario contar con herramientas tecnológicas dentro de la comunidad y el entorno. Las herramientas que necesitan las instituciones educativas buscan ofrecer mejores servicios a través de hacer más eficientes los procesos, comunicar a su comunidad o difundir el conocimiento de manera apropiada. Las necesidades actuales ya no se enfocan simplemente sobre plataformas que almacenan datos y de escritorio, sino que buscan interactividad y que vayan al día con las innovaciones. Las plataformas de uso actual en el sistema educativo se enfocan en el control escolar además de algunas funciones administrativas, donde pueden obtener reportes que ayudan a la toma de decisiones internas y datos de interés para los directivos y responsables para mejorar sus procesos.
  • 7. Integración y programación móvil 6 | P á g i n a Ahora el sector educativo busca mejorar los procesos de control interno y también crear canales de comunicación dentro de instituciones educativas, unificar y comunicar por medio de una App a las diferentes personas de la escuela: directivo, administrativo, docente, padre y alumno. La incorporación de las Tecnologías de la Información y Comunicación (TIC) en el ámbito de la educación, ha adquirido una creciente importancia y evolución en estos últimos años; luego del mercado lúdico, la educación es el segundo sector con el mayor número de aplicaciones móviles. Las de control y de comunicación, en este 2018 destacan y traen consigo funciones como: visualizar en tiempo real la hora de entrada de los hijos a la institución, medir su avance en inglés y hasta saber si se ha portado mal dentro del aula. El uso de aplicaciones móviles en las instituciones permite tener una comunicación directa e interacción con los trabajadores de la comunidad, involucrar a los padres de familia, tutores, maestros y alumnos ayuda mejorar la calidad de la educación. Algunos ejemplos de aplicaciones usadas: Nombre: Mini Nurse–Lite Plataforma: Android Idioma: inglés Descripción: Mini Nurse-Lite es una aplicación de enfermería de información general de la terminología médica, abreviaturas médicas, sufijos y prefijos médicos, diferentes tipos de calculadoras, los pulmones y los sonidos del corazón, los sitios de inyección subcutánea, la práctica médica de cálculo y preguntas de práctica sobre diversos temas de enfermería.Ilustración 1 – Mini Nurse-Lite
  • 8. Integración y programación móvil 7 | P á g i n a Nombre: 3D Anatomy Learning Plataforma: Android Idioma: inglés, español Requiere conexión permanente a internet. Descripción: Anatomy Learning es una aplicación diseñada para facilitar el aprendizaje de la anatomía humana con contenidos didácticos de huesos, ligamentos, músculos, arterias, venas, nervios, corazón, pulmones, riñones, entre otros. Nombre: Epocrates Plataforma: iPhone, iPad y Android. Idioma: inglés Descripción: Epocrates es una aplicación médica que contiene un identificador de pastillas, un directorio de información sobre medicamentos y un sistema de ecuaciones para calcular dosis de medicaciones y las interacciones que pueden tener las combinaciones. Ilustración 2 – 3D Anatomy Learning Ilustración 3 - Epocrates
  • 9. Integración y programación móvil 8 | P á g i n a Introducción n este proyecto hablaremos del cómo se relaciona el tema de integración y programación móvil con los diferentes ámbitos de la vida cotidiana: el trabajo y la educación. El uso de estas herramientas permite hacer más dinámica cualquier actividad y así mismo provoca una reducción de esfuerzos para una mejor agilidad en determinada actividad. Sabemos que la educación ha sido estancada con las mismas prácticas de siempre o bien conocida como el clásico modelo tradicional, sin embargo, con la implementación de dispositivos móviles con aplicaciones educativas para el estudio, puede marcar la diferencia en el aprendizaje de los más pequeños: los niños y niñas. Una situación similar ocurre con el trabajo, en la actualidad se siguen realizando prácticas antiguas y poco eficientes, sin embargo, para las compras en línea se utilizan las nuevas tecnologías desarrolladas para móviles, nos permite comprar con plena seguridad, ya que los trabajadores por medio de sus dispositivos les permiten realizar sus tareas más rápido y teniendo una logística impecable para satisfacer al usuario final. E
  • 10. Integración y programación móvil 9 | P á g i n a Alcance l desarrollo de aplicaciones para los dispositivos móviles se propicia en tecnologías propietarias que no han sido liberadas y en tecnologías que son de uso comercial, así mismo la investigación se enmarca en estas últimas ya que a partir de ellas está disponible la información para su explotación. Así mismo es de gran importancia exhibir que existen diferentes tipos de aplicaciones para dispositivos móviles: mapas y navegación, búsqueda y el acceso a internet, compras, juegos, comunicaciones y chat, además de aplicaciones corporativas. Todas ellas usadas por el usuario común según sus prioridades y necesidades. E
  • 11. Integración y programación móvil 10 | P á g i n a Definiciones 1. App Una app es una aplicación de software que se instala en dispositivos móviles o tablets para ayudar al usuario en una labor concreta. 2. Programación informática: Refiere a la acción de crear programas o aplicaciones, a través del desarrollo de un código fuente, el cual se basa en el conjunto de instrucciones que sigue el ordenador para ejecutar el programa. Estas instrucciones se encuentran escritas en lenguaje de programación que luego son traducidas a un lenguaje de máquina, que puede ser interpretado y ejecutado por el hardware del equipo (parte física del equipo). Dicho código fuente es creado, diseñado, codificado, mantenido y depurado a través de la programación, donde el principal objetivo a lograr es el desarrollo de sistemas que sean eficaces, accesibles y agradables o amigables para el usuario. 3. Programa informático: Es una pieza de software, es decir, una secuencia compleja de instrucciones y procesos orquestados para cumplir una tarea específica en un computador. 4. Código fuente: Conjunto de líneas de texto que expresan, en un lenguaje de programación determinado, los pasos a seguir para una ejecución del programa correcta. 5. Lenguaje de programación: Un programa destinado a la construcción de otros programas informáticos. 6. Programa: Se refiere a una secuencia compleja de instrucciones y procesos para cumplir una tarea en específico en un computador.
  • 12. Integración y programación móvil 11 | P á g i n a 7. Lenguaje de programación: Se le conoce a un programa destinado a la construcción de otros programas informáticos. 8. Programación móvil: Es la acción de desarrollar aplicaciones para aparatos celulares, smartphones y dispositivos con recursos limitados. 9. Software: Es un término informático que hace referencia a un programa o conjunto de programas de cómputo, así como datos, procedimientos y pautas que permiten realizar distintas tareas en un sistema informático. 10. API: Interfaz de programación de aplicaciones. una serie de rutinas usadas por una aplicación para gestionar generalmente servicios de bajo nivel. 11. Bug: Término aplicado a los errores descubiertos al ejecutar cualquier programa informático. 12. SQL: Lenguaje especializado de programación que permite realizar consultas. 13. Interface: Es el conjunto de conexión ya sea dos componentes de hardware, dos programas o entre usuario y programa. 14. FTP: Protocolo de transferencia de archivos permite a un usuario acceder y transferir desde otro sistema de red.
  • 13. Integración y programación móvil 12 | P á g i n a Antecedentes Los precursores Por la década de las 70 y 80 compañías como Casio, Texas Instruments y Hewlett-Packard crearon calculadoras programables. Tal es el caso de la HP-65, la cual empaquetaba 9 registros de almacenamiento y tenía espacio para 100 instrucciones por teclado. Newton Por el año de 1993, Apple comercializo un dispositivo llamado Newton, que para muchos representa el primer PDA. Este aparato contaba con interesantes funciones entre ellas el reconocimiento de escritura y la sincronización con una computadora de escritorio, aplicaciones para notas, contactos y fechas, calculadora, conversión de unidades. Ilustración 4 - HP-35 Fuente: Wikipedia Ilustración 5 - Apple Newton Fuente: Clipset
  • 14. Integración y programación móvil 13 | P á g i n a Palm y las PocketPC Palm comenzó como una empresa dedicada al desarrollo de software en los 90, generando aplicaciones de sincronización para Casio y HP, software de reconocimiento de escritura para la Newton entre otras; sin embargo, poco después crea el sistema operativo Palm Os. IDE Mobile Visual Studio 2005 con un proyecto para Windows Mobile Cuando el uso de dispositivos móviles se hizo algo común, también la programación de aplicaciones para estos se tomó más en serio, así diversas compañías crearon entornos de programación o complementos a IDES existentes y emuladores para permitir la creación de aplicaciones, entre ellos:  Pda Toolbox,  HS Pascal,  Satellite Forms,  Mobile Visual Basic  Scotbuilder,  Embedded Visual Tools  Palm Os Developer Studio, Ilustración 7 - IDEs para Android Fuente: Intellectsoft Ilustración 6 - PocketPC, fabricada por Acer Fuente: Wikipedia
  • 15. Integración y programación móvil 14 | P á g i n a Java En 1995 Sun Microsystemas presento el lenguaje de programación Java. Desde su creación java se enfocaba en especificaciones esenciales para dispositivos de bajo consumo y con la llegada de Java ME (Micro Edition), se establecieron las bases para la creación de aplicaciones para dispositivos con recursos limitados. Al día de hoy Java es uno de los lenguajes más utilizados a nivel mundial por lo que invertir en su aprendizaje es altamente recomendado. Ilustración 8 - Plataforma Java Fuente: Wikipedia Objective C Corría el año 2006 y todo parecía normal: BlackBerry con buena salud, las Pocket PC en buen estado y Palm con salud suficiente, sin embargo, en los laboratorios de Apple ya se estaba preparando algo y era precisamente el IPhone. Java, Free Pascal, Ada y Lisp; además el componente Interface Builder se encarga de la creación de interfaces de usuario. Aunque en ese tiempo ya existían tiendas de aplicaciones para otras plataformas, la tienda para el iPhone marco la pauta ya que todo estaba disponible desde una aplicación embebida en el sistema, con lo cual las demás plataformas siguieron esta tendencia. Ilustración 9 - Código en Objective C Fuente: LinkedIn
  • 16. Integración y programación móvil 15 | P á g i n a Android Google siempre ha sido ambicioso y con gran visión, por ello desde el año 2005 compró la compañía Android Inc. con el firme objetivo de contar con un sistema operativo y el consecuente desarrollo de dispositivos. Desde sus inicios la programación se ha realizado en el IDE Eclipse con un kit de desarrollo y plugin para cada versión específica de la API, aunque también es posible configura un entorno con NetBeans o IntelliJ IDEA. Como lenguaje de programación se utiliza básicamente Java, JavaScript, Basic y C, adicionalmente existe un entorno web llamado Android Inventor, que sin necesidad de código se pueden crear aplicaciones de mediana complejidad. Ilustración 11 - Arquitectura del Sistema Operativo más usado del mundo Fuente: Android Developers Ilustración 10 - SmartPhone con Android Fuente: El Mundo
  • 17. Integración y programación móvil 16 | P á g i n a Estado Actual La programación móvil ha sido muy usada, en este caso nos enfocaremos en la educación. La Universidad Politécnica Salesiana desarrollo un proyecto para apoyar el aprendizaje de niños y niñas y despertar su interés por el estudio de la ciencia y tecnología, todo esto basado en la experimentación y guías multimedia de enseñanza. Uno de los objetivos de esta implementación es diseñar e implementar una aplicación para dispositivos Android para el marco del proyecto pequeñas y pequeños científicos de la UPS. DISEÑO E IMPLEMENTACIÓN DE UNA APLICACIÓN EN LA EDUCACIÓN Autor: Diego Fernando Quisi Peralta. Ilustración 12 - Junta con padres de familia para presentar el proyecto
  • 18. Integración y programación móvil 17 | P á g i n a Justificación La UPS está desarrollando un proyecto para apoyar el aprendizaje de niños y niñas y despertar su interés por el estudio de la ciencia y tecnología todo esto basado en la experimentación y guía multimedia de enseñanza. Objetivos  Diseñar implementar una aplicación para dispositivos Android para el marco del proyecto “pequeñas y pequeños científicos de universalidad politécnica salesiana”  Desarrollar una app para Android que estará controlado por 1 o más módulos de aprendizaje de los medios digitales.  Generar una base de conocimiento sobre el desarrollo de proyectos Android.  Realizar pruebas en diferentes tipos de dispositivos.  Cargar la app de Google Play Store.  Para hacer este tipo de software se requiere un tipo de estudios de la tecnología a desarrollar.  HTMLS para dispositivos móviles basándose CSS, DOM y JAVA. Se requiere el estudio del entorno del desarrollo Android. Ilustración 14 – Niños realizando las actividades Ilustración 13 – Aplicación del proyecto
  • 19. Integración y programación móvil 18 | P á g i n a Talleres realizados Talleres realizados Taller Escuela Cupo Taller 1 Carlos Crespi 12 niños Taller 2 Francisco Dávila 12 niñas Taller 3 Carlos Crespi 12 niños Taller 4 Francisco Dávila 12 niñas Taller 5 Carlos Crespi 12 niños Taller 6 Francisco Dávila 12 niñas Taller 7 Carlos Crespi 12 niños Taller 8 Francisco Dávila 12 niñas Tabla 1 - Talleres realizados en la escuela Carlos Crespi y Francisco Dávila Estadísticas del rendimiento de los niños De acuerdo a lo observado se ha determinado un incremento del 48% en el promedio del conocimiento de los niños y niñas con los temas abarcados. La información recabada se presenta a partir de la comparación entre pre-test y el post- test. Ilustración 15 - Gráfico de los resultados académicos Algo relevante a mencionar es la metodología empleada, ya que para el lograr el resultado no se recurrió a enviar deberes, trabajos, ni estudiar en horas fueras del taller. El proyecto en el cual se trabajó, fue bien recibido por los centros educativos, los cuales manifestaron que ha sido una experiencia -enriquecedora en el desarrollo intelectual, creativo y emprendedor- 0% 10% 20% 30% 40% 50% 60% Pre-test Post-test 10% 58%
  • 20. Integración y programación móvil 19 | P á g i n a DESARROLLO DE UNA APLICACIÓN QUE PERMITA ADMINISTRAR PEDIDOS Autor: José Ricardo Cajilima Alvarado. Justificación Con el surgimiento de los teléfonos inteligentes y el uso masivo que se hace con ellos. Se aprovechará que la empresa hará entrega de tablets con sistema operativo Android a sus agentes vendedores del área de perfumería para que realicen su trabajo. Ante ello se requiere una aplicación para Almacenes Juan Eljurí, específicamente para la división de Perfumería que permitirá:  Administrar los pedidos de una forma más rápida, sencilla y eficiente.  Así mismo tener un control de sus agentes vendedores por parte de los supervisores de ventas. Ilustración 16 - Aplicación desarrollada para la gestión de pedidos en una división de Perfumería
  • 21. Integración y programación móvil 20 | P á g i n a Objetivos  Desarrollar una app para dispositivos móviles plataforma Android que permite automatizar la gestión de pedidos y controlar rutas de los agentes vendedores de almacenes Juan Eljuri Cia. Ltda., división Perfumería.  Controlar con una aplicación móvil que permita reducir tiempos de operación hasta su facturación, en la tarea de administración de pedidos.  Proporcionar información actualizada de stock precios de los productos de los agentes vendedores. Procesos actuales Ilustración 17 - Proceso actual que usa la división de perfumería para la entrega de un producto al usuario
  • 22. Integración y programación móvil 21 | P á g i n a Creación de la aplicación  Se elaboraron diseños breves que sirven de referencia para la implementación.  Elaboración de diagramas de clases, secuencias, arquitectónico y navegación.  Elaboración de bocetos de las pantallas del sistema (prototipos).  Fase de codificación y desarrollo.  Fase de pruebas.  Análisis de resultados.  Documentación. Ilustración 19 - Diseño para la creación de pedidos Ilustración 20 - Diagrama de secuencia, Inicio de sesión Ilustración 18 - Prototipo de Pantalla
  • 23. Integración y programación móvil 22 | P á g i n a Observaciones de la aplicación Observaciones de la aplicación N° Actividad Responsable Observaciones 1. Inicio de sesión Agente vendedor El logueo funciona correctamente, la aplicación se demora un tiempo considerable ya que tiene que cargar toda la información en la base de datos local. 2. Visualizar catalogo Agente vendedor La aplicación no se demora ya que los datos se encuentran almacenados localmente, se sugieren algunos cambios. 3. Crear pedido Agente vendedor Se observa una fluidez al cargarse pocos datos, pero cuando se carga muchos artículos la aplicación tiende a demorarse. El usuario manifiesta que los pasos son muy intuitivos a la hora de crear un pedido. 4. Modificar pedido Agente vendedor De igual manera los datos se cargan rápidamente y los pasos son los mismos que Crear el pedido, el usuario no tuvo mayores dificultades. 5. Ayuda Agente vendedor La ayuda es de lectura por lo que no hubo mayores inconvenientes. Se sugieren agregar algunas funcionalidades. Tabla 2 – Observaciones de la aplicación
  • 24. Integración y programación móvil 23 | P á g i n a Planteamiento del problema Identificación del problema Caso 1 - ¿Es posible implementar las nuevas herramientas para profundizar en el aprendizaje de niños y niñas sabiendo los problemas y situaciones externas que se pueden presentar, además de la necesidad de contar obligatoriamente con un dispositivo con conexión a internet? Caso 2 - ¿Es posible mantener una aplicación con constantes actualizaciones e ir mejorándola con nuevas funciones para los principales sistemas operativos móviles y así satisfacer al usuario final en sus diferentes usos? Objetivo Mostrar la importancia de mantener una aplicación actualizada, ya que esto involucra añadir nuevas funciones, corregir errores potenciales que involucren o puedan dañar la privacidad del usuario final en las diferentes plataformas que esta aplicación pueda ser descargada (App Store y Play Store). En el tema de la educación, se busca fomentar el uso de las nuevas tecnologías para el aprendizaje de los niños para un desarrollo integro sin caer en los peligros que estas derivan, para ello debe haber una serie de restricciones en el dispositivo para crear un ambiente apropiado para la enseñanza de los niños y niñas. Justificación Como todo sistema operativo, las aplicaciones también están expuestas a errores, estos mismo tienen que ser abordados y corregidos, además es de gran importancia estar a la vanguardia y agregar funciones útiles para que el usuario final pueda hacer uso de ellas.
  • 25. Integración y programación móvil 24 | P á g i n a Estar modificando y corriendo una aplicación de la cual dependen muchas personas requiere una gran responsabilidad, en el caso anterior, la aplicación se encarga de administrar pedidos y controlar rutas de los vendedores de una división de perfumería, que, si bien la aplicación cumple con el objetivo de administrar y controlar, esta deberá ajustarse a las nuevas necesidades que surjan, por medio de nuevas funciones, cambio de diseño, organización y ser amigable para con el cliente. Los errores potenciales pueden derivar a fugas de información y afectar directamente a los usuarios, por ello debe estar en constante pruebas y analizando los diversos comentarios por parte de los usuarios, las plataformas para albergar las aplicaciones como la Google Play Store y App Store, permiten administrar los comentarios fácilmente por medio de categorías y una puntuación general de esta misma. En caso de encontrar un error potencial, se deberá actuar conforme a su protocolo preestablecido y en su caso informar a los usuarios cumpliendo con la responsabilidad social de toda empresa. En el caso de la educación, no hay gran diferencia; la aplicación debe estar en constante actualización para agregar nuevo contenido y seguir en el interés de niños y niñas, ofreciendo una interfaz amigable y fácil de usar. Sin embargo, la problemática empleada en la aplicación también cobra gran relevancia ya que muchas escuelas no tienen los recursos necesarios para adquirir los dispositivos y contar con una conexión a internet, destacando que solo la aplicación y sitio web que se brinda es de forma gratuita por lo que eso no conlleva más gastos. Por otro lado, omitiendo que las necesidades anteriores se formula otro problema ya que los sistemas educativos están tan atrasados que ven como un peligro el uso de estas tecnologías, por lo que requiere una gran y fuerte iniciativa para que más escuelas implementen estas nuevas herramientas, y posteriormente una buena capacitación para una buena aplicación de esta misma.
  • 26. Integración y programación móvil 25 | P á g i n a Como tecnología y herramienta para la enseñanza, también está expuesta a peligros por ello debe estar en constante supervisión, ya que el dispositivo independientemente de la aplicación, este mismo tiene más funciones las cuales algunas no son recomendables para niños, como el libre acceso a internet y plataformas de video. Límites y restricciones Limitantes Caso 1:  Necesidad de contar con dispositivos con acceso a internet.  El poco conocimiento del potencial que puede brindar.  El poco apoyo por parte del sector de la educación para su mejor implementación.  Su constante actualización y tiempo requerido.  La capacitación constante para el aplicador. Caso 2:  El uso que se le puede dar.  La adquisición de equipos.  La capacitación a los trabajadores.  La correcta implementación. Restricciones Caso 1:  Los costos que puede requerir para adquirir el equipo necesario.  El tiempo que puede llevar para implementarse correctamente. Caso 2:  Costos que puede conllevar tener una aplicación actualizada.  Recursos que se necesitan para tener funcionando los servicios que esta conlleva.
  • 27. Integración y programación móvil 26 | P á g i n a Marco Teórico Dispositivos móviles Los dispositivos móviles, se han catalogado como PDA (asistentes personales digitales), por sus siglas en inglés, por otro la En términos generales cuando se refiere a dispositivos móviles, prácticamente se está refiriendo como los PDA (asistentes personales digitales), por sus siglas en inglés, además de los Smartphones o teléfonos inteligentes. Un PDA es una especie de computadora de mano que inicialmente fue diseñada con el propósito de ser una agenda electrónica, pero actualmente es mucho más que una agenda, ya que en estos dispositivos es posible navegar en la web, ver y editar documentos, ver películas, entre otras cosas. Por otro lado, los Smartphones son dispositivos que integran la funcionalidad de un teléfono móvil y un PDA. Sistemas operativos para dispositivos móviles A continuación, se hace una breve descripción de los principales sistemas operativos para dispositivos móviles. Nombre del Sistema Operativo Descripción  Android Ilustración 21 - Logo de Android Fuente: Wikipedia Es un sistema operativo móvil desarrollado por Google, basado en Kernel de Linux y otros softwares de código abierto. Fue diseñado para dispositivos móviles con pantalla táctil, como teléfonos inteligentes, tabletas, relojes inteligentes (Wear OS), automóviles (Android Auto) y televisores (Android TV).
  • 28. Integración y programación móvil 27 | P á g i n a  iOS Ilustración 22 - Logo de iOS Fuente: Wikipedia iOS es un sistema operativo móvil de la multinacional Apple Inc. Originalmente desarrollado para el iPhone (iPhone OS), después se ha usado en dispositivos como el iPod touch y el iPad. No permite la instalación de iOS en hardware de terceros. Tabla 3 - Descripción de los dos principales Sistemas Operativos en Móviles Fuente: Wikipedia Cuota de mercadode los dos principales sistemas operativos en móviles Ilustración 23 - Gráfico de pastel que muestra la cuota de mercado de los dos principales S.O. en móviles Fuente: Statista Como se muestra en la gráfica de pastel Android domina el mercado de Smartphones, siendo Android 8.1 como el más usado, sin embargo no es el más actual, por otro lado se encuentra la versión 9.0 como una de las versiones más recientes del sistema operativo de Google y sumando todas las versiones abarcan 16.07% 14.03% 13.83% 2.99%8.29% 6.23% 6.14% 4.72% 3.43% 18.27% Sistemas Operativos Móviles Android 8.1 Android 9.0 iOS 12.1 Android 6.0 Android 7.0 Android 7.1 iOS 12.2 Android 5.1 Android (-) Otros
  • 29. Integración y programación móvil 28 | P á g i n a un 59.19%, mientras que iOS se posiciona en el tercer lugar con un 19.97% y otros SO con un 18.27%. Programación en diferentes plataformas La programación en dispositivos móviles se lleva a cabo en plataformas para sistemas de escritorio, siendo Windows, Mac OS, Unix y Linux, las plataformas usadas por los programadores, dejando en claro que, así como es posible desarrollar en diversas plataformas, también es posible desarrollar en diversos lenguajes de programación. Ilustración 24 - Cuota de los principales Sistemas Operativos para ordenador Fuente: Statista Problemáticas de crear una aplicación Crear una app, ¿es fácil o complicado? La popularidad de los smartphones y la posibilidad de instalar cualquier app y juego que queramos hace que el desarrollo de aplicaciones viva un gran momento, si bien hay mucha competencia y cuesta mucho posicionarse en las tiendas oficiales. 0.0% 10.0% 20.0% 30.0% 40.0% 50.0% 60.0% 70.0% 80.0% 90.0% W I N D O W S MA C O S L I N U X O T R O S 89.8% 4.3% 3.1% 2.9%
  • 30. Integración y programación móvil 29 | P á g i n a En la variedad está el gusto, pero desgraciadamente no todas las apps son igual de buenas. Las notificaciones El mal uso o abuso de las notificaciones de las apps móviles da para todo un artículo. Se trata de una herramienta muy práctica para el usuario, porque le permite enterarse de cosas sin necesidad de consultar la app constantemente: mensajes, avisos, correos, ofertas de última hora. Las actualizaciones Junto con las notificaciones, las actualizaciones son otro de los problemas de las aplicaciones móviles actuales. Por un lado, el tamaño de las mismas. ¿Realmente es necesario que Facebook se actualice una vez al mes y la actualización ocupe más de 100 MB? Caso aparte es el de los juegos, donde pueden justificarse por la inclusión de nuevos niveles o mejores gráficos. Aplicaciones Vs. Páginas web Al igual que ocurre con una página o sitio web, tener tu propia aplicación móvil porque te sientes obligado a tenerla puede ser contraproducente, ya que tu app tiene que aportar algo. Ilustración 25 - Fuente: Elaboración de Enrique Dans Ilustración 26 - Apartado de actualizaciones en Google Play Store Fuente: Xataka Ilustración 27 - App Vs. Pág. Web Fuente: Duoo Solutions
  • 31. Integración y programación móvil 30 | P á g i n a Lenguajes de programación Lenguajes en Android Java Según el índice de TIOBE, Java es el lenguaje de programación más popular a partir de junio de 2017. Si quieres desarrollar apps Android, volverá probablemente a Java. Tiene una comunidad de desarrolladores grandes y establecidas, y eso significa que usted puede conseguir fácilmente la ayuda y soporte técnico. Por lo tanto, cuando usted está desarrollando para móviles con Java, eres libre llegar a cualquier tipo de aplicación que usted puede pensar. El único límite será tu imaginación y el nivel de tus conocimientos de Java. Ilustración 28 - Gran parte de Android, está desarrollado en Java Fuente: Muy Computer Kotlin Kotlin fue diseñado y desarrollado por JetBrains, la compañía checa, conocida por su popular IDE, IntelliJ IDEA. Equipo Android de Google ha anunciado recientemente que oficialmente se añade soporte para el lenguaje de programación de Kotlin. Kotlin se desarrolló para abordar algunos de los problemas de Java. Según fans de la lengua, sintaxis de Kotlin es más simple, más limpio y conduce a menos consumo de recursos de código. Esto le ayuda a concentrarse más en solucionar el problema, en lugar de luchar con sintaxis verbal. También, usted puede utilizar Kotlin y Java juntos en el mismo proyecto, y hace realmente potente. Ilustración 29 - Kotlin se ha convertido en el leguaje preferido por Google, ante las disputas legales con Oracle - Fuente: Xataka
  • 32. Integración y programación móvil 31 | P á g i n a Lenguajes iOS Swift Introducido en 2014 y declarado abierto en el año 2015, Swift está rápidamente alcanzando con desarrolladores móviles. Es muy popular, especialmente entre las nuevas empresas de desarrollo de iOS. Apple ha añadido algunas características geniales a este lenguaje, tales como la sintaxis simplificada, la capacidad de localizar con precisión los errores de programador, etcétera. Enormes esfuerzos de Apple para promover Swift indican claramente que quiere que este nuevo lenguaje para convertirse en el lenguaje de programación convencional para su ecosistema de aplicaciones. Objective-C Objective-C fue el lenguaje de desarrollo original para iOS. Mientras que la lengua rápida introducida recientemente es el futuro del desarrollo de iOS, muchos proyectos avanzados todavía dependen de Objective-C. Así que la transición de Objective-C a Swift se espera que sea algo lento, y puede que necesite tanto de ellos en algunos proyectos, al menos por el momento. Lenguajes Cross-Platform JavaScript JavaScript tiene una larga historia que se remonta a los inicios de la World Wide Web. Un lenguaje muy popular front-end y el servidor, permite los desarrolladores web hacer todo lo posible de mejorar la experiencia del usuario de sus sitios web a la construcción de aplicaciones web completa. Ilustración 30 - Fuente: Wikipedia Ilustración 31 - Fuente: Wikipedia
  • 33. Integración y programación móvil 32 | P á g i n a Hoy en día, hay varios frameworks de JavaScript dirigidos específicamente a plataformas de desarrollo móvil, como Ionic 2 y React Native. Es muy fácil de desarrollar aplicaciones móviles multiplataforma con estos frameworks y librerías. Esto significa que sólo tienes que escribir una sola versión de su aplicación, y funcionará en iOS o Android. JAVASCRIPT Fundamentos de JavaScript TypeScript TypeScript es un superconjunto de JavaScript y ofrece mayor seguridad mediante la adición de tipificación estática opcional. También ofrece mejor soporte para el desarrollo de aplicaciones a gran escala. Desarrollado y mantenido por Microsoft, TypeScript permite a los desarrolladores a escribir aplicaciones móviles multiplataforma utilizando frameworks como NativeScript. Otros Lenguajes C# C# es el idioma de Windows Mobile. Es muy similar a C++ y Java. Microsoft ha adoptado algunas de las características de Java para simplificar su arquitectura, manteniendo el C++ como diseño. También tiene una gran y activa comunidad de desarrolladores que siempre es amable y servicial. C C es el segundo idioma en el índice TIOBE, y al igual que Java, su comunidad está llena de los desarrolladores experimentados que podrían ofrecer valiosos consejos sobre cómo escribir código libre de errores.
  • 34. Integración y programación móvil 33 | P á g i n a Creado por Dennis Ritchie, mientras trabajaba para laboratorios Bell, C es un lenguaje ampliamente adoptado y potente que le permite manipular directamente las operaciones de bajo nivel de un equipo. Si usted desea utilizar Android NDK (Kit de desarrollo nativo), necesitará familiarizarse con el lenguaje C. C++ Si estás familiarizado con C, entonces realmente disfrutará de lectura y escritura de código de C++. C++ es una extensión de C, con más características y soporte para programación orientada a objetos. C++ es también un idioma preferido de los desarrolladores de Android NDK. Puede utilizar C++ para desarrollar aplicaciones de Windows Mobile también. C++ va cabeza a cabeza con Java en el campo de desarrollo de software, y realmente vale la pena dominar. Python Python es otra lengua popular que es fácil de aprender y fácil de leer. Los creadores de la lengua han realizado esfuerzos adicionales para mantener la sintaxis simple y claro posible. Esto realmente ayuda a los desarrolladores novatos mantener altos niveles de productividad, desde el primer día. Si usted está cómodo con la escritura de código Python, puede utilizar marcos como Kivy para desarrollar aplicaciones móviles multiplataforma. Ruby Ruby es un lenguaje de scripting orientado a objetos, influenciado por Ada, C++, Perl, Python y Lisp. RubyMotion es un gran marco para el desarrollo de aplicaciones móviles nativas y multiplataforma en Ruby. Es bastante fácil de aprender Ruby, gracias a su elegante sintaxis se centra en la simplicidad y productividad.
  • 35. Integración y programación móvil 34 | P á g i n a Lenguajes de programación Lenguajes de programación más usados Posición Tendencia Lenguaje de programación Cuota Cambio 1 - Java 15.932% +2.66% 2 - C 14.282% +4.12% 3 ▲ Python 8.376% +4.60% 4 ▼ C++ 7.562% +2.84% 5 ▲ Visual Basic .NET 7.127% +4.66% 6 ▼ C# 3.455% +0.63% 7 ▼ JavaScript 3.063% +0.59% 8 ▲ PHP 2.442% +0.85% 9 ▲ SQL 2.184% +2.18% 10 ▲ Objective-C 1.477% 11 ▲ Delphi/Object Pascal 1.396% +0.00% 12 ▲ Assembly language 1.371% -0.10% 13 ▼ MATLAB 1.283% -0.29% 14 ▼ Swift 1.220% -0.35% 15 ▲ Go 1.189% -0.20% 16 ▼ R 1.111% -0.80% 17 ▼ Ruby 1.109% -0.32% 18 ▼ Perl 1.013% -0.42% 19 ▲ Visual Basic 0.979% -0.37% 20 ▼ PL/SQL 0.844% -0.52% Tabla 4 - Lenguajes de programación más usados Fuente: CodinHub En móviles Java Kotlin Swift Objective-C JavaScript TypeScript C# C C++ Python Ruby
  • 36. Integración y programación móvil 35 | P á g i n a Teoría Teoría de lenguajes de programación Se encarga del diseño, implementación, análisis, caracterización y clasificación de lenguajes de programación y sus características. Es un campo multidisciplinario que depende de (y en algunos casos afecta a) las matemáticas, la ingeniería del software, la lingüística e incluso las ciencias cognitivas. La teoría de lenguajes de programación es una rama de la ciencia de la computación que se encarga del diseño, implementación, análisis, caracterización y clasificación de lenguajes de programación y sus características. Un lenguaje de programación es un conjunto de símbolos y de reglas que se usan para expresar algoritmos. Igualmente, sirven para escribir programas que permiten la comunicación usuaria/máquina. Algunos otros eventos claves en la historia de la teoría de lenguajes de programación desde entonces:  En la década de 1950, Noam Chomsky desarrolló la Jerarquía de Chomsky en el campo de la lingüística que impactó directamente a la teoría de lenguajes de programación y otras ramas de la informática.  En la década de 1960, el lenguaje Simula fue desarrollado por Ole-Johan Dahl y Kristen Nygaard; muchos consideran que es el primero lenguaje orientado a objetos; Simula también introdujo el concepto de corrutinas.  Durante 1970, Un pequeño equipo de científico en Xerox PARC elaboran Smalltalk, un lenguaje orientado a objetos muy conocido por su novedoso entorno de desarrollo.  Sussman y Steele desarrollan el lenguaje de programación Scheme, un dialecto de Lisp que incorpora Ámbitos léxicos, un espacio de nombres unificado, y elementos del modelo Actor.  Backus, en la conferencia del Premio Turing de 1977, asedió el estado actual de los lenguajes industriales y propuso una nueva clase de lenguajes de programación ahora conocidos como lenguajes de programación funcional.
  • 37. Integración y programación móvil 36 | P á g i n a  La aparición del process calculi, como el cálculo de sistemas comunicantes de Robin Milner, y el modelo de Comunicación secuencial de procesos de C. A. R. Hoare, así como modelos similares de concurrencia como el Modelo Actor de Carl Hewitt.  La aplicación de la teoría de tipos como una disciplina a los lenguajes de programación, liderada por Milner; esta aplicación ha conducido a un tremendo avance en la teoría de tipos en cuestión de años.  En la década de 1990, Philip Wadler introdujo el uso de monads para estructurar programas escritos en lenguajes de programación funcional. Teoría de los compiladores En la comunicación hombre-máquina existe una dificultad real: las computadoras operan sobre bits (ceros y unos) y registros y los hombres se entienden por medio de idiomas (lenguaje natural), o utilizan una noción científica determinada por el área de problemas en que trabaja, entre otras vías. Un programa fuente escrito en un lenguaje de programación necesita pasar por un proceso de conversión al lenguaje de máquina que entiende la computadora, a ese proceso de conversión del programa fuente al lenguaje o código de máquina se le llama proceso de compilación o simplemente compilación. Y al programa capaz de realizar ese proceso se le llama compilador o traductor. Ilustración 31 - Compilador
  • 38. Integración y programación móvil 37 | P á g i n a Estructura de un compilador El trabajo de un compilador consiste en tomar la cadena fuente del programa, determinar si es sintácticamente válida y, a la vez, generar un programa equivalente en un lenguaje que la computadora entienda. El trabajo del compilador se puede dividir en diferentes partes: 1. Análisis lexicológico (scanner) 2. Análisis sintáctico (parser) 3. Análisis semántico 4. Generación de código intermedio 5. Optimización de código intermedio 6. Generación de código ejecutable 7. Tabla de símbolos 8. Gestión de errores Análisis lexicológico El analizador lexicológico o scanner se encarga de tomarlos y agruparlos en entidades sintácticas simples o elementales denominadas tokens o lexemas. Las categorías de tokens pueden variar de un lenguaje a otro, pero en general se distinguen las siguientes:  Palabras reservadas  Identificadores  Constantes numéricas y literales  Operadores
  • 39. Integración y programación móvil 38 | P á g i n a Resultados esperados Con este proyecto se espera que:  El uso de las nuevas tecnologías llegue a más escuelas para el uso en la educación y aprendizaje de los niños y niñas.  Aprender la importancia de la programación y todo lo que nos puede brindar.  Agilizar el trabajo con el uso de aplicaciones para resolver situaciones cotidianas.  Usar todo el potencial que nos puede brindar un dispositivo móvil  Brindar una idea clara por medio de conceptos y ejemplos en lo que se puede usar la programación para móviles. Conclusión En conclusión, se puede determinar que la programación móvil es un pilar fundamental en la sociedad moderna ya que hay un excesivo uso de los dispositivos móviles, los cuales cuentan con una increíble capacidad para ejecutar casi todo tipo de aplicaciones, distinguido por su fácil alcance, uso y accesibilidad para los usuarios. Sin embargo, un dispositivo móvil o smartphone no es nada si no tiene aplicaciones descargadas y aquí es donde entra la programación orientada a los móviles o programación móvil, que se encarga se crear las aplicaciones que tanto usamos día tras día, ya sea para estudiar, trabajar o simplemente para pasar el rato. Ante ello es importante saber todo el potencial que nos puede brindar una simple aplicación porque como lo pudimos leer anteriormente, cuando se aplico en la educación, esta tuvo buenos resultados, así mismo en el trabajo que termino agilizando actividades para un bien en común y por supuesto en la satisfacción de los usuarios.
  • 40. Integración y programación móvil 39 | P á g i n a Es importante mencionar que el uso de los dispositivos móviles como herramienta de aprendizaje no sustituye a cualquier otro medio de aprendizaje tradicional, ya que estos se consideran un recurso adicional de apoyo y enriquecimiento de los procesos de enseñanza-aprendizaje, en los que el estudiante es el principal constructor de su conocimiento. Finalmente, el uso de dispositivos móviles para la educación constituye una oportunidad para ampliar la posibilidad de que los alumnos puedan construir colaborativamente su conocimiento a través de estas TIC, y así desarrollar sus habilidades y actitudes.
  • 41. Integración y programación móvil 40 | P á g i n a Referencias Alvarado, J. R. (2015). Desarrollo de una aplicación,para dispositivos móvilesque permita administrar pedidos (Vol. II). (P. Ingavelez, Ed.) Cuenca, Ecuador: Universidad Politécnica Salesiana. Recuperado el 16 de noviembre de 2019, de https://dspace.ups.edu.ec/bitstream/123456789/7951/1/UPS-CT004811.pdf Andrey, B. (Recuperado el 20 de Enero de 2012). drdobbs.com. Obtenido de drdobbs.com: https://web.archive.org/web/20151022062235/http://www.drdobbs.com/jvm/language-of- the-month-kotlin/232600836/. Consultado el 26 de Noviembre del 2019 Cobo, J. G. (2013). TFC Desarrollo de Aplicaciones Móviles. Palma de Mallorca. Recuperado el 25 de noviembre de 2019, de http://openaccess.uoc.edu/webapps/o2/bitstream/10609/18528/6/jugarridocoTFC0113memo ria.pdf elearning. (Realizado el 16 de Septiembre de 2019). view.genial.ly. Obtenido de view.genial.ly: https://view.genial.ly/57eaa8fd89ef5b0fac3cb1f7/interactive-content-historia-de- dispositivos/. Consultado el 26 de Noviembre del 2019 Fernández, R. (18 de octubre de 2019). Statista. Obtenido de https://es.statista.com/estadisticas/1060664/cuota-de-mercado-mundial-de-so-para-moviles/ Fernández, R. (18 de octubre de 2019). Statista. Obtenido de https://es.statista.com/estadisticas/576870/cuota-de-mercado-mundial-de-los-sistemas- operativos/ Germán, N. E. (Diciembre de 2006). Programación de aplicacionespara dispositivos móviles. Obtenido de http://ri.ues.edu.sv/3193/1/Programaci%C3%B3n%20de%20aplicaciones%20para%20disp ositivos%20m%C3%B3viles.pdf Margaret,R. (s.f.). WhatIs.com. Obtenido de WhatIs.com: https://searchdatacenter.techtarget.com/es/definicion/Desarrollo-de-aplicaciones-moviles/. Consultado el 26 de Noviembre del 2019 Moreno, J. (23 de julio de 2019). CodingHub.Obtenido de https://codinghub.es/lenguajes-de- programacion-mas-usados
  • 42. Integración y programación móvil 41 | P á g i n a Peralta,D. F. (2012). Diseño e Implementación de una Aplicación para la educación (Vol. II). (V. R. Bykbaev, Ed.) Cuenca: Universidad Politécnica Salesiana. Recuperado el 26 de noviembre de 2019, de https://dspace.ups.edu.ec/bitstream/123456789/3298/1/UPS- CT002537.pdf Raffino, M. E. (5 de Diciembre de 2018). Concepto.de.Recuperado el11 de Noviembre de 2019, de Concepto.de: https://concepto.de/programacion/ Raffino, M. E. (27 de Noviembre de 2018). Concepto.de. Recuperado el11 de Noviembre de 2019, de Concepto.de: https://concepto.de/software/ Raffino, M. E. (27 de Febrero de 2019). Concepto.de.Recuperado el11 de Noviembre de 2019, de Concepto.de: https://concepto.de/algoritmo-en-informatica/ Raya,A. (23 de Enero de 2019). www.elespanol.com. Obtenido de www.elespanol.com: https://www.elespanol.com/omicrono/tecnologia/20190123/lenguaje-programacion-fisico- permite-ciegos-propios-programas/370714482_0.html/. Consultado el 26 de Noviembre del 2019 Sauledo, Z. (Ultima edicion 10 de 01 de 2008). arpentechnologies.com. Recuperado el26 de 11 de 2019, de arpentechnologies.com: https://arpentechnologies.com/es/blog/aplicaciones- movil/kotlin-nuevo-lenguaje-programacion-android/ Siripathi, S. (24 de julio de 2017). Envato tuts+. Obtenido de https://code.tutsplus.com/es/articles/mobile-development-languages--cms-29138 Wikipedia. (Junio de 2019). Wikipedia. Obtenido de https://es.wikipedia.org/wiki/Android#Aplicaciones Wikipedia. (noviembre de 2019). Wikipedia. Obtenido de https://es.wikipedia.org/wiki/IOS#Kit_de_desarrollo