Especialización
DESARROLLO DE APLICACIONES MÓVILES PARA ANDROID, IOS E HÍBRIDOS CON IA
Desarrolla e implementa aplicaciones móviles nativas para Android, iOS e híbridos usando inteligencia artificial
Inicio 19 de agosto 2026
Organiza




Esta especialización incluye
3 cursos
3 proyectos (1 proyecto por curso): Android, iOS y Flutter
Asesoría del profesor en clase
Aula virtual con acceso a la grabación de las clases y archivos de estudio
Archivos complementarios de estudio
Doble certificación, por la Universidad San Martin de Porres y Andes – Centro de Negocios Tecnológicos
CLASE INTRODUCTORIA
Acerca de la especialización
Esta especialización está diseñada para formar profesionales altamente capacitados en el desarrollo de aplicaciones móviles modernas utilizando tecnologías nativas (Android con Kotlin y Jetpack Compose, iOS con Swift y SwiftUI) y tecnología multiplataforma (Flutter).
Asimismo ofrece una formación práctica y profunda que cubre desde los fundamentos hasta la publicación de apps, siguiendo las mejores prácticas de arquitectura, diseño de interfaces, consumo de APIs y funcionalidades nativas.
Conocimientos básicos de algún lenguaje de programación, de preferencia orientada a objetos y estructuras de control.
Organiza Universidad de San Martín de Porres y Andes – Centro de Negocios Tecnológicos.
Cursos de la especialización
Los cursos se podrán llevar de manera flexible, en cualquier orden. Los cursos son independientes con objetivos de aprendizaje que se complementan.
- Curso 1: Desarrollo Móvil Nativo Android
(2 meses y medio, 70 horas académicas)
Lunes y Miércoles 8:00 pm a 9:30 pm
- Curso 2: Desarrollo Móvil Nativo iOS
(2 meses y medio, 70 horas académicas)
Lunes y Miércoles 8:00 pm a 9:30 pm
- Curso 3: Desarrollo Móvil Híbrido Flutter
(1 mes y medio, 42 horas académicas)
Sábados 10:00 am a 1:00 pm
Dirigido a
- Desarrolladores de software que desean especializarse en tecnologías móviles
- Profesionales del área de sistemas con conocimientos básicos en programación orientada a objetos
- Empresas y startups que buscan formar equipos técnicos con habilidades en aplicaciones móviles
- Estudiantes avanzados de ingeniería de software o afines que deseen insertarse en el mercado mobile
Garantía y Satisfacción
Podrás acceder a una próxima edición de la especialización para reforzar y actualizar tus conocimientos, o en caso no hayas podido asistir con regularidad a las clases. Es decir, podrás llevar la especialización por segunda vez desde 0 sin costo adicional.
PLAN DE ESTUDIO
CURSO 1: DESARROLLO MÓVIL NATIVO ANDROID CON IA
Aprenderás el desarrollo de aplicaciones nativas modernas para Android utilizando Kotlin y Jetpack Compose, el nuevo sistema declarativo de interfaces. Aprenderás a estructurar proyectos con arquitectura MVVM, integrar servicios del dispositivo como GPS, notificaciones y Firebase, y aplicar buenas prácticas para una experiencia de usuario fluida y profesional
Módulo 1: Fundamentos de Android y Jetpack Compose
- Instalación de Android Studio y configuración del SDK
- Estructura del proyecto (Gradle, carpetas, módulos)
- Configuración de emuladores y dispositivos físicos
- Creación de un proyecto inicial con Jetpack Compose
- Asistentes de IA en el desarrollo Android: Gemini integrado en Android Studio y alternativas como Claude, ChatGPT o modelos open source
- Declaración de UI con funciones @Composable
- Jerarquía de componentes y recomposición automática
- Aplicación de Material Design y uso de previews
- Creación de componentes reutilizables
- Uso de remember, mutableStateOf y State
- Control de recomposición y ciclo de vida
- Comunicación de estados entre componentes
- Uso de efectos: LaunchedEffect, SideEffect, derivedStateOf
- Configuración de Navigation Compose
- Definición de rutas y paso de argumentos
- Navegación anidada y control del back stack
- Integración con ViewModel y eventos de navegación
Módulo 2: Arquitectura y lógica de negocio
- Principios de arquitectura MVVM
- Uso de ViewModel y exposición de estados con StateFlow
- Comparación entre LiveData y Flow
- Manejo del ciclo de vida del ViewModel
- Introducción a la inyección de dependencias
- Configuración de Hilt en un proyecto Android
- Uso de módulos, qualifiers y scopes
- Inyección en ViewModels y repositorios
- Diseño de la capa de dominio
- Definición y responsabilidades de los UseCases
- Separación de lógica de negocio y UI
- Uso de Flows en la capa de dominio
- Uso de IA para generar y revisar código de arquitectura: cómo validar lo que propone el asistente
- Implementación del patrón Repository
- Separación de origen remoto/local
- Inyección de dependencias en pruebas
- Mocks y fakes para pruebas unitarias
Módulo 3: Persistencia local y APIs
- Configuración de Room en Android
- Definición de entidades, DAOs y relaciones
- Integración con Flow para observar cambios
- Buenas prácticas y manejo de migraciones
- Comparación entre Room y SharedPreferences
- Uso de SharedPreferences para datos simples
- Alternativa moderna: DataStore Preferences
- Seguridad y encriptación de preferencias
- Configuración de Retrofit con Kotlin
- Definición de servicios y modelos de datos
- Manejo de errores con sealed class o Result
- Interceptores, logging y headers personalizados
- Consumo de una API de IA desde la app con Retrofit: envío de texto y lectura de la respuesta
- Observación de datos desde ViewModel
- Estados de carga: loading, success, error
- Renderizado condicional en Compose
- Pruebas con Fake APIs o MockWebServer
Módulo 4: Funcionalidades del dispositivo
- Manejo de permisos en tiempo de ejecución
- Uso de FusedLocationProviderClient
- Lectura de sensores (acelerómetro, proximidad)
- Validación y fallback ante errores de ubicación
- Diferencias entre servicios y WorkManager
- Uso de CoroutineWorker con restricciones
- Ejecución de tareas periódicas
- Ejemplos prácticos: sincronización o subida de datos
- Canales de notificación y prioridades
- Implementación de Firebase Cloud Messaging (FCM)
- Notificaciones locales con AlarmManager
- Acciones desde notificación y navegación a pantalla
- Autenticación con correo y Google
- Lectura/escritura de documentos en Firestore
- Subida y descarga de archivos en Storage
- Reglas de seguridad y control de acceso
- Panorama de IA en el dispositivo: qué resuelve ML Kit y qué permite Gemini Nano (resumen, corrección de texto, descripción de imágenes)
Módulo 5: Experiencia de usuario y publicación
- Uso de animate*AsState y updateTransition
- Animaciones de entrada/salida con AnimatedVisibility
- Creación de animaciones personalizadas
- Optimización de rendimiento y buenas prácticas
- Soporte para pantallas múltiples y plegables
- UI responsiva con BoxWithConstraints y Modifier
- Accesibilidad: contrastes, etiquetas y talkback
- Soporte para modo oscuro y localización
- Introducción a pruebas unitarias con JUnit
- Pruebas de UI con Compose Testing
- Mocks, fakes y pruebas de flujo de datos
- Cobertura de pruebas y buenas prácticas
- Generación de archivo .aab y firma con Keystore
- Configuración de Google Play Console
- Checklist de políticas y requisitos
- Mantenimiento, actualizaciones y versiones beta
CURSO 2: DESARROLLO MÓVIL NATIVO IOS
Aprenderás el desarrollo de aplicaciones nativas para iOS utilizando Swift y SwiftUI, con un enfoque moderno y modular. Explorarás el uso de MVVM, Combine para la gestión reactiva de datos, integración con servicios del sistema como cámara, GPS y notificaciones, así como persistencia con CoreData y UserDefaults. Se cubren también pruebas, accesibilidad y publicación en App Store
Módulo 1: Fundamentos de iOS y SwiftUI
- Instalación de Xcode y herramientas de línea de comando
- Estructura de carpetas y archivos en un proyecto iOS moderno
- Gestión de targets, build settings y simuladores
- Creación del primer proyecto con SwiftUI
- Declaración de vistas en SwiftUI
- Uso de @State, @Binding y control del estado
- Navegación con NavigationStack y NavigationLink
- Modularización de vistas y navegación jerárquica
- App lifecycle en SwiftUI vs UIKit
- Uso de @main, App y Scene
- Integración con UIKit mediante UIViewControllerRepresentable
- Manejo de estados globales y SceneDelegate
- Uso de Modifiers para personalización de vistas
- StackViews: HStack, VStack, ZStack
- Aplicación de temas, tipografía y colores
- Previews dinámicos y adaptabilidad visual
Módulo 2: MVVM y organización del código
- Patrón MVVM aplicado a SwiftUI
- Definición de ObservableObject y uso de @Published
- Comunicación entre vistas mediante @Binding
- Ejemplo completo de ViewModel reactivo
- Organización de carpetas por feature
- Separación de lógica de negocio y UI
- Coordinadores y navegación limpia
- Buenas prácticas para escalabilidad
- Fundamentos del framework Combine
- Uso de Publisher, Subscriber y operadores
- Binding entre Combine y SwiftUI
- Cancelables y manejo de memoria
- Abstracción de acceso a datos con protocolos
- Implementación de repositorios concretos (API, CoreData)
- Uso de inyección de dependencias
- Pruebas unitarias con repositorios mock
Módulo 3: Persistencia y APIs
- Introducción y configuración de CoreData
- Definición de entidades y relaciones
- Uso de @FetchRequest y contexto
- Persistencia reactiva y actualización en tiempo real
- Uso de UserDefaults para datos simples
- Encapsulamiento de preferencias con wrappers
- Seguridad de datos y migración
- Alternativas modernas: AppStorage y SceneStorage
- Consumo de APIs REST con URLSession
- Decodificación de JSON con Codable
- Manejo de errores HTTP y timeouts
- Pruebas con respuestas mock
- Uso de Result y Error personalizado
- Control de estados en la UI (loading, error, success)
- Mensajes de error amigables al usuario
- Reconexión y manejo de errores comunes
Módulo 4: Funcionalidades nativas y Firebase
- Uso de UIImagePickerController y AVFoundation
- Acceso a la ubicación con CoreLocation
- Lectura de fotos desde galería y cámara
- Manejo de permisos sensibles en Info.plist
- Registro y permisos de notificaciones
- Envío de notificaciones locales con UNNotificationCenter
- Configuración de Firebase Cloud Messaging (FCM)
- Navegación desde notificaciones push
- Autenticación con email, Apple y Google
- Lectura y escritura en Firestore
- Subida y descarga de imágenes en Storage
- Reglas de seguridad y control de acceso
- Introducción a BGTaskScheduler
- Ejecución de tareas diferidas y periódicas
- Configuración en Info.plist y app lifecycle
- Buenas prácticas para tareas en segundo plano
Módulo 5: UI avanzada y publicación
- Animaciones implícitas con .animation()
- Animaciones explícitas con withAnimation
- Uso de matchedGeometryEffect y transiciones
- Creación de animaciones complejas y personalizadas
- Layouts responsivos con GeometryReader
- Compatibilidad entre iPhone, iPad y Mac (Catalyst)
- Uso de @Environment para adaptabilidad
- Buenas prácticas para diseño universal
- Introducción a XCTest para pruebas unitarias
- Pruebas funcionales de vistas y ViewModel
- UI Testing con XCUITest
- Automatización y generación de coverage
- Configuración de certificados y provisioning profiles
- Uso de App Store Connect y TestFlight
- Revisión de requisitos de publicación
- Subida y despliegue con Xcode
CURSO 3: DESARROLLO MÓVIL HÍBRIDO FLUTTER
Aprenderás a desarrollar interfaces responsivas, manejar estados con Provider, consumir APIs, trabajar con sensores del dispositivo y desplegar aplicaciones para Android e iOS con una sola base de código
Módulo 1: Fundamentos de Flutter y desarrollo de interfaces
- ¿Qué es Flutter y por qué utilizarlo?
- Instalación de Flutter SDK
- Configuración del entorno y emuladores
- Creación del primer proyecto
- Estructura de un proyecto Flutter
- Variables y tipos de datos
- Operadores, funciones y parámetros
- Clases y programación orientada a objetos
- Null Safety
- Colecciones (List, Map y Set)
- StatelessWidget vs StatefulWidget
- Widgets básicos (Text, Container, Image, Icon)
- Column, Row y Stack
- ListView y GridView
- Navegación entre pantallas
- Material Design y Cupertino
- Formularios y validaciones
- Botones, TextField y Dropdown
- Responsive Design y Themes
- Introducción a paquetes de pub.dev
Módulo 2: Manejo de estados e integración con Firebase para gestionar datos en la nube
- ¿Qué es el State Management?
- Function del setState() en un Stateful Widget
- Provider & Riverpod
- Compartiendo información entre pantallas
- Buenas prácticas
- ¿Qué es una API REST?
- Solicitudes HTTP y JSON y serialización
- Consumo de APIs con Dio o http
- Manejo de errores
- Indicadores de carga y estados
- Introducción a Firebase y configuración en el proyecto
- Firebase Authentication
- Cloud Firestore
- Firebase Storage
- Firebase Cloud Messaging
- Organización de carpetas
- Arquitectura por capas
- Modelos y repositorios
- Manejo de errores
- Debugging y herramientas de desarrollo
Módulo 3: Desarrollo con IA y despliegue
- ¿Qué es la IA Generativa?
- Consumo de modelos de IA mediante APIs
- Autocomplete and code generator
- Integración con Claude Code
- Cámara y selección de imágenes
- Geolocalización
- Permisos del dispositivo
- Almacenamiento local (SharedPreferences y SQLite/Hive)
- Notificaciones Push
- Configuración de íconos y Splash Screen
- Versionamiento de la aplicación
- Generación de APK y AAB
- Generación de IPA para iOS
- Firma digital de aplicaciones
- Creación de cuenta de desarrollador
- Publicación en Google Play Console
- Publicación en App Store Connect
- Configuración de capturas y ficha de la aplicación
- Actualizaciones de la aplicación
Profesor
Proyectos del profesor
Metodología
Aprenderás con un enfoque práctico. Debes revisar los archivos de estudio y participar en las clases donde podrás realizar tus consultas al profesor. En cada módulo de estudio, rendirás un examen online y desarrollarás una actividad de tu proyecto del curso. Al finalizar cada curso, podrás exponer tu proyecto para recibir las recomendaciones finales del profesor.
Certificación
Se entregarán dos certificados por la especialización:
- Certificado por haber participado, otorgado por Andes – Centro de Negocios Tecnológicos.
- Certificado por haber aprobado, otorgado por la Universidad San Martín de Porres.


Online en vivo
6 meses y medio
52 clases
182 horas académicas







