LOE/LOMLOE (BOE)Digitalización4º de Educación Secundaria Obligatoria7 min de lectura

Desarrollo de aplicaciones móviles

En la actualidad, el mercado está dominado por dos grandes sistemas operativos: Android (de Google) e iOS (de Apple).

Lectura5 partesUn recorrido editorial y navegable.
Práctica12 preguntasTest y tarjetas de memoria para abrir después de leer.
Objetivo4º de Educación Secundaria ObligatoriaFormato rápido para comprobar si el tema encaja.
Parte 1

Introducción al Ecosistema Móvil

Sistemas Operativos y Dispositivos

En la actualidad, el mercado está dominado por dos grandes sistemas operativos: Android (de Google) e iOS (de Apple).

  • Arquitectura: Android utiliza un núcleo Linux y es de código abierto, lo que permite que muchos fabricantes (Samsung, Xiaomi, etc.) lo usen. iOS es un sistema cerrado y exclusivo de los dispositivos Apple.
  • Fragmentación: Este es un concepto clave en Android. Al existir miles de modelos de teléfonos con diferentes tamaños de pantalla, resoluciones y potencias, los desarrolladores deben crear apps que se adapten a todos ellos.
  • Sensores integrados: A diferencia de un PC, el móvil interactúa con el mundo físico mediante:
    • GPS: Para la ubicación geográfica.
    • Acelerómetro: Mide cambios en la velocidad y orientación.
    • Giroscopio: Proporciona una medición más precisa de la rotación en 3D.

Tipos de Aplicaciones

No todas las apps se construyen de la misma forma. La elección del tipo de app depende del presupuesto y del rendimiento necesario.

TipoDescripciónVentajasInconvenientes
NativasEscritas en el lenguaje específico del sistema (Java/Kotlin para Android, Swift para iOS).Máximo rendimiento y acceso total al hardware.Coste elevado (hay que hacer dos versiones).
Web AppsPáginas web optimizadas que parecen apps.Funcionan en cualquier navegador.No acceden bien a sensores y requieren internet.
HíbridasMezcla de ambas. Se programan con tecnologías web pero se instalan como nativas.Un solo desarrollo sirve para todas las plataformas.Rendimiento algo inferior a las nativas.

Ciclo de Vida del Desarrollo

Crear una app sigue un proceso estructurado:

  1. Análisis de necesidades: ¿Qué problema resuelve la app? ¿Quién es el usuario?
  2. Diseño y prototipado: Dibujar cómo será la app antes de programar.
  3. Desarrollo: Escritura del código o unión de bloques lógicos.
  4. Pruebas (Testing): Detectar fallos (bugs) en diferentes dispositivos.
  5. Despliegue: Subida a tiendas como Google Play o App Store.
Parte 2

Diseño de Interfaz y Experiencia de Usuario (UI/UX)

Principios de Diseño Móvil

Un buen diseño debe ser intuitivo. Los usuarios no leen manuales de instrucciones para usar una app.

  • Usabilidad: Facilidad con la que un usuario logra su objetivo.
  • Accesibilidad: Asegurar que personas con discapacidades visuales o motoras puedan usar la app (usando contrastes altos o compatibilidad con lectores de pantalla).
  • Diseño responsivo: La interfaz debe "fluir" y recolocarse según si el móvil está en vertical u horizontal.

Componentes de la Interfaz

Los elementos visuales básicos que forman una pantalla son:

  • Botones y Menús: Deben tener un tamaño suficiente para ser pulsados con el dedo (mínimo 44x44 píxeles).
  • Formularios: Espacios para introducir texto o números. En móviles, deben ser cortos para evitar que el usuario se canse de escribir.
  • Iconografía: Uso de símbolos universales (una lupa para buscar, un engranaje para ajustes).

Prototipado de Aplicaciones

Antes de programar, se crean Wireframes, que son esquemas en blanco y negro de la estructura. El prototipado permite validar la navegación sin gastar tiempo en programación compleja. Herramientas como Figma o incluso papel y lápiz son fundamentales en esta fase para definir el flujo: ¿qué pasa cuando pulso este botón? ¿a qué pantalla me lleva?

Parte 3

Programación por Bloques y Lógica de Control

Entornos de Desarrollo Visual

Herramientas como App Inventor o Thunkable dividen el trabajo en dos partes:

  1. Diseñador: Donde arrastramos botones, imágenes y etiquetas a una pantalla virtual.
  2. Bloques: Donde encajamos piezas de lógica para dar órdenes a esos elementos. Para ver los resultados, se suele usar un emulador en el PC o conectar un móvil real mediante Wi-Fi para probar la app al instante.

Variables y Estructuras de Datos

Las variables son "cajas" donde guardamos información que puede cambiar:

  • Variables Globales: Accesibles desde cualquier parte de la app (ej. la puntuación de un juego).
  • Variables Locales: Solo funcionan dentro de un bloque específico.
  • Tipos de datos: Números (x=5x = 5), Cadenas de texto ("Hola"), y Booleanos (Verdadero/Falso).

Lógica y Control de Flujo

Es el "cerebro" de la aplicación. Se basa en:

  • Condicionales (Si/Entonces): Si el usuario introduce la contraseña correcta, entonces abre la pantalla de inicio.
  • Bucles: Repetir una acción varias veces (ej. mostrar una lista de 10 productos).
  • Funciones: Grupos de bloques que realizan una tarea específica y que podemos llamar en cualquier momento para no repetir código.

Gestión de Eventos

La programación móvil es dirigida por eventos. La app no hace nada hasta que ocurre algo:

  • Cuando Botón1.Click: Ejecuta una acción.
  • Cuando SensorDeProximidad.Cambio: Apaga la pantalla si el móvil está cerca de la oreja.
  • Cuando RecibirNotificación: Muestra un aviso al usuario.
Parte 4

Funcionalidades Avanzadas y Multimedia

Uso de Multimedia

Podemos integrar componentes que controlen la cámara para tomar fotos, el reproductor para música o el grabador de sonido. Es importante gestionar los formatos de archivo (como .mp3 o .jpg) para que no ocupen demasiado espacio en la memoria del dispositivo.

Geolocalización y Mapas

El sensor GPS permite obtener las coordenadas del usuario:

  • Latitud y Longitud: Latitud:40.4167,Longitud:3.7033Latitud: 40.4167, Longitud: -3.7033 (coordenadas de Madrid).
  • Podemos usar estas coordenadas para mostrar la posición en un mapa interactivo de Google Maps o calcular la distancia entre dos puntos mediante fórmulas matemáticas integradas en el sistema.

Almacenamiento de Datos

Si cerramos una app y al abrirla los datos han desaparecido, la app no es útil.

  • TinyDB: Es una base de datos local sencilla que guarda información en la memoria del teléfono (ej. el nombre del usuario).
  • CloudDB / Firebase: Permiten guardar datos en la nube, lo que hace posible que varios usuarios compartan información en tiempo real (como en un chat).
Parte 5

Publicación, Ética y Seguridad

Seguridad y Privacidad

El acceso a la cámara o al GPS requiere permisos. Como desarrolladores, debemos:

  • Pedir solo los permisos estrictamente necesarios.
  • Cumplir con el RGPD (Reglamento General de Protección de Datos), asegurando que los datos personales de los usuarios estén protegidos y no se vendan sin consentimiento.
  • La seguridad debe ser una prioridad: nunca guardes contraseñas en texto plano.

Distribución de Aplicaciones

Para instalar una app en Android, necesitamos generar un archivo APK o AAB.

  • Tiendas oficiales: Google Play Store y Apple App Store son las más seguras porque revisan que las apps no tengan virus.
  • Monetización: Podemos ganar dinero con la app mediante publicidad, compras dentro de la app o haciendo que la app sea de pago.

Mantenimiento y Feedback

Una aplicación nunca está terminada. Tras el lanzamiento, debemos:

  1. Escuchar el feedback de los usuarios en las reseñas.
  2. Hacer Debugging (corrección de errores) cuando los usuarios reporten que la app se cierra sola.
  3. Lanzar actualizaciones para añadir nuevas funciones o mejorar la seguridad ante nuevas amenazas.
Después de leer

Pasa a la práctica con dos bloques bien visibles

Cuando hayas leído los apuntes, abre el test para comprobar lo que has entendido o las flashcards para memorizar las ideas importantes. Los dos se abren en una ventana propia.

Siguiente paso

¿Quieres ir más allá
del artículo?

Encuentra el mismo tema en Houki con el resto de preguntas, la repetición espaciada, las correcciones completas y un progreso seguido en el tiempo.