---
title: "Técnicas de programación para el desarrollo de aplicaciones móviles"
date: "2020-07-01"
categories: 
  - "app-development"
  - "low-code"
  - "mobile-development"
  - "tools"
tags: 
  - "cross-platform-mobile-apps"
  - "cross-platform-mobile-development"
  - "mobile-development-tools"
  - "mobiletogether"
description: Explore las técnicas de programación en MobileTogether para el desarrollo móvil multiplataforma, incluyendo funciones de usuario y grupos de acciones, con el fin de mejorar la eficiencia de las aplicaciones.
---
Status: #blog

Tags:  #cross-platform-mobile-apps #cross-platform-mobile-development #mobile-development-tools #mobiletogether

Categories: [mobile-development](/blog/es/category/mobile-development.md) | [low-code+no-code](/blog/es/category/low-codeno-code.md) 
# Técnicas de programación para el desarrollo de aplicaciones móviles

MobileTogether es una plataforma de desarrollo de aplicaciones de fácil uso y con un enfoque de bajo código, que permite crear aplicaciones sofisticadas para todas las plataformas a partir de un único diseño.

La programación de bajo código no significa "sin código". Un especialista en bases de datos podría comenzar con algunas consultas SQL y utilizar la interfaz de arrastrar y soltar de MobileTogether para crear una aplicación con tablas y gráficos elegantes que muestren datos empresariales actualizados, mientras que los desarrolladores experimentados a menudo utilizan técnicas de programación conocidas en el desarrollo móvil para crear soluciones MobileTogether altamente complejas y elegantes.

Los desarrolladores definen funciones de usuario, parámetros, variables, bucles o estructuras de datos complejas cuando esa es la herramienta adecuada para la tarea. MobileTogether facilita el control rápido y sencillo de todas las funciones del dispositivo: cámara, micrófono, GPS, SMS, captura de escritura a mano, y mucho más. MobileTogether le ayuda a alcanzar sus objetivos rápidamente y a crear aplicaciones móviles realmente innovadoras, con el atractivo necesario para volverse virales.

MobileTogether se trata de realizar el trabajo de manera eficiente, no de limitar la forma en que lo haces. Veamos algunos ejemplos de técnicas de programación utilizadas en las aplicaciones de MobileTogether.

![](/blog/images/single_developer01.jpg)

<!--more-->

MobileTogether Designer es la [herramienta de escritorio para crear aplicaciones móviles multiplataforma](https://www.altova.com/es/mobiletogether/app-development). Es gratuita y viene con una colección de aplicaciones de ejemplo que puede analizar en detalle para comprender cómo fueron creadas.

### Funciones del usuario en una aplicación de entrega de paquetes

El ejemplo de "Entrega de Paquetes" es una simulación completa de una aplicación real de entrega de paquetes. El usuario final asume el papel de un conductor de una empresa de reparto, cuya tarea es entregar paquetes desde un almacén en Nueva Jersey hasta destinos en la ciudad de Nueva York, guiado por el GPS. Puede ejecutar la aplicación en la ventana del simulador del diseñador para ver una representación realista del movimiento hacia cada destino. Si ejecuta "Entrega de Paquetes" en su propio teléfono, su dispositivo móvil utilizará su funcionalidad GPS integrada. Sin embargo, si no se encuentra físicamente en Nueva York, la aplicación mostrará rutas largas y tiempos estimados para llegar a cada destino. Puede simplemente hacer clic en el botón "Estoy aquí" en la aplicación para omitir el seguimiento de la ruta y avanzar directamente al destino.

"Parcel Delivery" fue desarrollado por un programador experimentado y depende en gran medida de las funciones del usuario. Por ejemplo, al inicio del día, la aplicación muestra al usuario una lista de tareas de entrega. A medida que se realizan las entregas, el usuario puede volver a esta página para ver qué tareas aún quedan pendientes, como se muestra en las imágenes a continuación, capturadas desde un teléfono Android:

[![Asignaciones de entrega para el conductor en una aplicación móvil de reparto de paquetes](/blog/images/parcel-delivery-android.png)](parcel-delivery-android.png)

La aplicación genera ambas vistas a partir de un único diseño de página, y la visualización exacta se determina evaluando las funciones del usuario. A continuación, se muestra cómo se ve la página en el diseñador de MobileTogether:

[![Ejemplos de funciones de usuario que ilustran técnicas de programación utilizadas en el desarrollo de aplicaciones móviles, disponibles en la sección de tareas de la aplicación](/blog/images/page-design-1-1.png)](page-design-1-1.png)

El desarrollador ha incluido dos funciones para el usuario en esta página: `ParcialmenteCompletados()` y `DestinosRestantes()`. Sin profundizar más, mi suposición es que el operador condicional que precede a `ParcialmenteCompletados()` devuelve un resultado de verdadero o falso. ¿Ha entregado el conductor algo todavía? Y `DestinosRestantes()` debe ser la lista de todos los lugares que quedan por visitar.

Vamos a ejecutar la aplicación en el simulador para ver si tengo razón. Aquí está la primera vista del simulador de la lista de tareas:

[![Utilizando el simulador MobileTogether para analizar técnicas de programación en el desarrollo móvil](/blog/images/delivery-list-1-1.png)](delivery-list-1-1.png)

La ejecución espera a que se haga clic en el botón "Iniciar entrega". En lugar de continuar, podemos hacer clic en el botón de la herramienta XPath que se encuentra debajo de "Fuentes de la página" para analizar el funcionamiento interno de la aplicación. El botón de XPath abre la ventana que se muestra a continuación, donde ya he seleccionado "ParcialmenteFinalizadosDestinos()" de la lista de funciones definidas por el usuario:

[![Una función definida por el usuario en la ventana del constructor de expresiones](/blog/images/simulator-1.png)](simulator-1.png)

Ahora puedo hacer clic en el botón verde "Ejecutar" o en el botón "Evaluador" que se encuentran en la barra de herramientas superior para evaluar la función

[![Evaluar la expresión mientras la ejecución está pausada](/blog/images/simulator-2.png)](simulator-2.png)

El resultado de la función del usuario es falso: el conductor aún no ha entregado nada. Al seguir los mismos pasos para la función RemainingDestinations(), obtengo lo siguiente:

[![Evaluación de la función "RemainingDestinations()"](/blog/images/simulator-3.png)](simulator-3.png)

El resultado de la función del usuario "RemainingDestinations()" es una lista en la que cada elemento es una estructura de datos que contiene todos los detalles sobre el destino.

El diseñador MobileTogether tiene un elemento principal en el menú dedicado a las funciones del usuario:

[![Técnicas de programación en el desarrollo móvil: la opción del menú principal para las funciones](/blog/images/main-menu.png)](main-menu.png)

Aquí es donde el desarrollador definió originalmente las funciones del usuario, y donde podemos acceder ahora para ver o editar dichas funciones. La opción "Lista de usos de todos..." genera un informe en la ventana de mensajes.

[![Técnicas de programación en aplicaciones móviles: informe sobre el uso de una función definida por el usuario](/blog/images/function-report.png)](function-report.png)

### Técnicas de programación en el desarrollo móvil: Subrutinas con parámetros

Los Grupos de Acciones en MobileTogether son, esencialmente, subrutinas que recopilan una serie de acciones que puede llamar cuando lo necesite en una aplicación. Puede [obtener más información](https://www.altova.com/es/mobiletogether/low-code-app-development#action-trees) sobre las Acciones y los Grupos de Acciones, o [ver una demostración en video](https://www.altova.com/es/mobiletogether/demos#video_Demos).

Al igual que con las subrutinas en cualquier lenguaje de programación de alto nivel, a veces es más eficiente pasar los valores de entrada a un Grupo de Acciones en tiempo de ejecución como parámetros. Por ejemplo, consideremos una aplicación llamada "Calidad del Aire" que consulta servicios web del proyecto "Índice Mundial de Calidad del Aire" y muestra las lecturas de sensores de todo el planeta.

La calidad del aire se ve afectada por desastres naturales como incendios forestales y erupciones volcánicas, por la actividad industrial y comercial a gran escala, y por la suma de comportamientos individuales como cocinar, calentar ambientes y conducir. Los patrones climáticos pueden concentrar o dispersar los contaminantes en cualquier lugar y momento. La aplicación permite al usuario seleccionar una ubicación específica o un área, y luego muestra las lecturas más recientes del índice de calidad del aire (ICA). Esta aplicación fue creada por un desarrollador aficionado.

[![Una aplicación móvil para reportar los niveles del índice de calidad del aire, creada por un desarrollador ciudadano](/blog/images/air-quality-iphone.png)](air-quality-iphone.png)

La API del Índice Mundial de Calidad del Aire utiliza consultas REST separadas para diferentes tipos de ubicación, y cada consulta devuelve un conjunto de datos ligeramente diferente. Una característica común es que la hora local de cada medición se devuelve como una hora GMT con una compensación. Es necesario manipular estos valores para mostrar a los usuarios la hora local correcta.

Trabajar con cálculos de fechas y horas puede ser complicado. Créanme, si nunca han tenido que hacerlo ustedes mismos, o lean nuestro artículo sobre [la validación de la transformación de datos](https://www.altova.com/blog/validating-data-transformation/). Pero esta es una aplicación ideal para un Grupo de Acciones, que se puede crear una sola vez y utilizar desde diferentes puntos del flujo de trabajo. Si enviamos los valores de la hora y el ajuste como parámetros, el grupo de acciones solo necesita un conjunto de acciones para calcular y formatear la hora local a partir de cualquier respuesta de la consulta.

Aquí está la definición del "Grupo de Acciones" en el diálogo "Grupos de Acciones" del diseñador:

[![Técnicas de programación para el desarrollo móvil: definición de parámetros para una subrutina](/blog/images/parameter-definition.png)](parameter-definition.png)

Las definiciones de los parámetros se encuentran en la parte superior, con los nombres "$time" y "$adj" asignados por el desarrollador. Dado que las casillas de "Opcional" no están marcadas, ambos parámetros son obligatorios cada vez que se llama al grupo de acciones.

El desarrollador incluyó más pasos dentro del grupo de acciones de lo que se podría esperar; resulta que no todas las zonas horarias se diferencian exactamente una hora completa con respecto al GMT. Por ejemplo, Terranova, en Canadá, y Teherán, en Irán, tienen una diferencia de horas, además de más o menos 30 minutos.

Aquí se muestra un ejemplo de la función "Calc Local Time" llamada desde dentro de otro grupo de acciones:

[![Proporcionar valores para los parámetros cuando se llama al grupo de acciones](/blog/images/parameter-provide.png)](parameter-provide.png)

Este es el último paso antes de que la aplicación cargue el mapa y la página de información para mostrar el índice de calidad del aire (ICA) de una ciudad. Los parámetros se pasan directamente, utilizando el resultado de la consulta a la API, sin ninguna manipulación innecesaria. Los parámetros pueden pasar valores individuales, como se muestra aquí, o arrays (arreglos) o mapas. Se pueden utilizar parámetros con grupos de acciones, o con subpáginas, plantillas de control, o al cerrar una aplicación para lanzar automáticamente otra.

Esta publicación solo cubre dos técnicas de programación para el desarrollo móvil que puede utilizar con MobileTogether. ¡Utilice todas sus habilidades y herramientas para crear las aplicaciones más eficientes en el menor tiempo posible! Consulte nuestra.. [demostraciones en video](https://www.altova.com/es/mobiletogether/demos#video_Demos), más [aplicaciones de ejemplo](https://www.altova.com/es/mobiletogether/demos), o incluso el/la [manual en línea](https://www.altova.com/manual/MobileTogether/mobiletogetherdesigner/) Para obtener una visión completa de toda la información, cuando esté listo para empezar a desarrollar sus propias aplicaciones móviles multiplataforma en tiempo récord, [Descargue el programa MobileTogether Designer](https://www.altova.com/es/mobiletogether/download).
