Programa del Curso

Introducción

Semana 1: Conceptos avanzados Swift, Kotlin y Java del guión

  • Swift (iOS)
    • Funciones avanzadas: Cierres, captura de valores, funciones de orden superior
    • Programación orientada a protocolos y genéricos
    • Gestión de memoria con ARC (Conteo Automático de Referencias)
  • Kotlin (Android)
    • Funciones de extensión y Kotlin Biblioteca estándar
    • Corrutinas para programación asincrónica
    • Clases selladas, enumeraciones y control avanzado de errores
  • Java Script (React nativo)
    • Funciones avanzadas de ES6+: Desestructuración, asíncrono/espera, promesas
    • Conceptos de programación funcional en JavaScript
    • Trabajar con bibliotecas de terceros en React Nativo

Semana 2: Arquitectura de aplicaciones móviles y Design Patterns

  • MVVM (Model-View-ViewModel) para iOS y Android
    • Descripción de la arquitectura MVVM para iOS (Swift) y Android (Kotlin)
    • Implementación de ViewModels y observación de datos con LiveData (Android) y Combine (iOS)
    • Reactprogramación iva con RxSwift y RxKotlin
  • Arquitectura basada en componentes en React nativo
    • Descripción de los ciclos de vida y los ganchos de los componentes
    • Prácticas recomendadas para administrar el estado y las propiedades a escala
    • Uso de React Context API para la administración de estado global

Semana 3: Conceptos avanzados Networking

  • Networking En iOS (Swift)
    • Trabajar con URLSession para solicitudes de red personalizadas
    • Llamadas a la API de REST avanzadas y control de errores
    • Trabajar con análisis sintáctico de JSON y codificable
    • Prácticas recomendadas para una comunicación segura con la API (anclaje SSL, OAuth)
  • Networking En Android (Kotlin)
    • Actualización para realizar llamadas a la API y manejar respuestas
    • Mecanismos avanzados de control de errores de API y reintentos
    • Uso de Gson o Moshi para el análisis de JSON
    • Comunicación segura mediante autenticación HTTPS y OAuth

Semana 4: Networking en React Nativo

  • Integración de API con Axios y Fetch
    • Integración avanzada de API con Axios y Fetch
    • Estrategias de control de errores y reintentos en solicitudes de red
    • Trabajar con autenticación (JWT, OAuth)
  • WebSockets y en tiempo real Communication
    • Introducción a WebSockets en React Nativo
    • Creación de funciones de chat o notificación en tiempo real con conexiones WebSocket
    • Administración de conexiones persistentes y actualizaciones de datos

Semana 5: Técnicas avanzadas de persistencia de datos

  • Datos básicos y SQLite (iOS)
    • Relaciones, recuperación y consultas avanzadas de datos principales
    • Usar SQLite directamente para iOS aplicaciones y administrar conexiones de bases de datos
    • Manejo eficiente y optimización de datos
  • Persistencia de la habitación y SQLite (Android)
    • Relaciones y consultas avanzadas de la base de datos de salas
    • Administración de grandes conjuntos de datos y optimización del rendimiento de la base de datos
    • Uso de ProGuard para proteger las estructuras de las bases de datos
  • Firebase Para almacenamiento en la nube (iOS y Android)
    • Integración con Firebase para la gestión de bases de datos en tiempo real
    • Prácticas recomendadas para sincronizar datos locales y en la nube

Semana 6: Estado Avanzado Management en React Nativo

  • Redux para el Estado Management
    • Conceptos avanzados Redux: Middlewares, Thunks y Sagas
    • Optimización Redux del rendimiento y la escalabilidad
  • Retroceso para el estado Management
    • Introducción a Recoil: Una alternativa más flexible a Redux
    • Manejo de la administración de estado a gran escala en todos los componentes
    • Actualizaciones de estado eficientes y gestión de estados atómicos

Semana 7: Avanzado Animations en iOS y Android

  • iOS (Swift)
    • Núcleo Animation: Animación de vistas, capas y transiciones
    • UIKit Dynamics: Creación de animaciones basadas en la física
    • Transiciones y animaciones personalizadas entre controladores de vista
  • Android (Kotlin)
    • MotionLayout para crear animaciones complejas
    • TransitionManager y transiciones de elementos compartidos
    • Animaciones de propiedades para el escalado de vista, la rotación y los cambios alfa

Semana 8: Animations y UI/UX en React nativo

  • React Nativo Animations
    • Uso de la API animada y reanimada para animaciones complejas
    • Implementación de gestos e interacciones mediante React Native Gesture Handler
    • Prácticas recomendadas para animaciones de alto rendimiento en React Nativo
  • Creación de componentes de interfaz de usuario personalizados
    • Creación de componentes reutilizables y personalizables en React Nativo
    • Implementación de diseños responsivos con consultas de medios y flexbox

Semana 9: Integración de módulos nativos y funciones de dispositivos

  • Accessing Características nativas del dispositivo
    • Uso avanzado de la cámara, la geolocalización, el Bluetooth y los sensores
    • Creación de módulos nativos en Swift y Kotlin para React Integración nativa
    • Integración de ARKit para realidad aumentada en iOS
    • Integración de CameraX y ARCore para realidad aumentada en Android
  • React Puente nativo y módulos nativos
    • Creación de módulos nativos personalizados para integrarlos con la funcionalidad específica de la plataforma
    • Creación de puentes Java y Swift para React aplicaciones nativas
    • Prácticas recomendadas para administrar código nativo en un entorno multiplataforma

Semana 10: Prueba y depuración de aplicaciones avanzadas

  • Pruebas en iOS (Swift)
    • Escritura de pruebas unitarias con XCTest y pruebas de interfaz de usuario para iOS
    • Uso de Xcode Instruments para la generación de perfiles de rendimiento y pérdidas de memoria
    • Integración continua y flujos de trabajo de prueba con Jenkins y CircleCI
  • Pruebas en Android (Kotlin)
    • Pruebas avanzadas de JUnit y Espresso para Android aplicaciones
    • Generación de perfiles de rendimiento e identificación de cuellos de botella mediante Android Profiler
    • Uso de Firebase Test Lab para pruebas automatizadas en múltiples dispositivos
  • React Pruebas nativas
    • Pruebas unitarias con Jest y pruebas de componentes con Enzyme
    • Pruebas de extremo a extremo con Detox y configuraciones de pruebas automatizadas
    • Generación de perfiles de rendimiento mediante React Native Debugger y Flipper

Semana 11: Implementación de aplicaciones e integración continua

  • Implementación de App Store (iOS)
    • Preparación de la aplicación para el envío: certificados de App Store, perfiles de aprovisionamiento y pruebas beta de TestFlight
    • Uso de Fastlane para automatizar la implementación de aplicaciones iOS
    • Administrar App Store Connect y configurar los procesos de revisión de aplicaciones
  • GoImplementación de ogle Play (Android)
    • Preparar el APK y firmarlo para el envío de Google Play
    • Automatización de la implementación de aplicaciones Android con Fastlane y Gradle
    • Uso de Google Play Console para la revisión de aplicaciones y las pruebas beta
  • Configuración de canalizaciones de CI/CD
    • Configuración de Jenkins, GitHub Acciones o CircleCI para canalizaciones de compilación e implementación automatizadas
    • Uso de Fastlane para flujos de trabajo de CI/CD iOS y Android
    • Procedimientos recomendados para controlar el control de versiones, los números de compilación y los canales de versión

Semana 12: Proyecto final

  • Desarrollo del Proyecto Fin de Carrera
    • Diseñar y desarrollar una aplicación completamente funcional que incorpore características avanzadas aprendidas a lo largo del curso.
    • Implemente UI/UX personalizada, animaciones avanzadas, administración de estados, integración de módulos nativos y comunicación API en tiempo real.
    • Optimice el rendimiento de la aplicación e impleméntela en App Store y Google Play.

Resumen y próximos pasos

Requerimientos

  • Sólida comprensión de los conceptos de programación, particularmente en Swift, Kotlin y JavaScript
  • Experiencia previa en la creación de aplicaciones nativas básicas iOS, Android o React
  • Conocimiento de patrones de diseño como MVC o MVVM y experiencia con la gestión básica del estado

Audiencia

  • Desarrolladores móviles
  • Programadores
 420 Horas

Número de participantes


Precio por Participante​

Testimonios (5)

Próximos cursos

Categorías Relacionadas