Contacta con nosotros

Temario del curso

Introducción

Semana 1: Panorama del Desarrollo Móvil

  • Ecosistema y plataformas móviles
    • Descripción general de los sistemas operativos móviles (iOS y Android)
    • Diferencias clave entre el desarrollo para iOS, Android y multiplataforma
    • Tiendas de aplicaciones populares (App Store de Apple, Google Play Store)
    • Introducción al desarrollo nativo, híbrido y multiplataforma
  • Nativo vs Híbrido vs Multiplataforma
    • Ventajas y desafíos de cada método de desarrollo
    • Descripción general de Swift (para iOS), Kotlin (para Android) y React Native (multiplataforma)
    • Cómo se traduce el código a las plataformas móviles (JavaScript a código nativo en React Native)
  • Fundamentos de programación
    • Introducción a conceptos de programación (variables, tipos de datos, funciones, flujo de control)
    • Comparación de la sintaxis de Swift, Kotlin y JavaScript
    • Escritura de programas simples usando Swift, Kotlin y JavaScript
  • Configuración de entornos de desarrollo
    • Instalación de Xcode y Android Studio
    • Configuración de React Native CLI y Expo
    • Ejecución de aplicaciones básicas "Hola Mundo" en simuladores y emuladores

Semana 2: Introducción a Swift, Kotlin y JavaScript

  • Programación en Swift para iOS
    • Variables, constantes y tipos de datos en Swift
    • Declaraciones de control de flujo (if, switch, bucles)
    • Funciones y parámetros en Swift
    • Introducción a la interfaz de Xcode y Swift Playgrounds
  • Programación en Kotlin para Android
    • Variables, tipos de datos y funciones en Kotlin
    • Comprensión de la seguridad frente a valores nulos en Kotlin
    • Estructuras de control de flujo y bucles
    • Introducción a la interfaz de Android Studio y Kotlin Playground
  • JavaScript para React Native
    • Variables, constantes y control de flujo en JavaScript
    • Características de ES6: funciones flecha, literales de plantilla y destructuring
    • Escritura y ejecución de programas básicos en JavaScript usando React Native con Expo

Semana 3: Diseño de Interfaz de Usuario para iOS

  • Elementos de UI en iOS
    • Introducción a UIKit y SwiftUI
    • Agregado y personalización de elementos de UI como botones, etiquetas y campos de texto
    • Uso de Interface Builder para diseñar la interfaz de usuario
    • Trabajo con Storyboards y diseño de interfaces de usuario multi-pantalla
  • Auto Layout y restricciones
    • Comprensión del sistema Auto Layout
    • Uso de restricciones para diseños responsivos en diferentes tamaños de pantalla
    • Creación de vistas en pila y ajuste dinámico de elementos de UI
  • Fundamentos de SwiftUI
    • Introducción al diseño de UI declarativo en SwiftUI
    • Construcción de componentes de UI simples usando SwiftUI

Semana 4: Diseño de Interfaz de Usuario para Android

  • Disposiciones XML en Android
    • Introducción al diseño de disposición basado en XML
    • Trabajo con disposiciones comunes: LinearLayout, RelativeLayout, ConstraintLayout
    • Agregado y personalización de elementos de UI: botones, vistas de texto, vistas de imagen
    • Uso de ConstraintLayout para diseños responsivos y dinámicos
  • Diseño Material
    • Integración de principios de Material Design (colores, iconos, tipografía)
    • Uso de componentes de Material (botones, botones de acción flotantes, tarjetas)
    • Implementación de temas y estilos para aplicaciones de Android

Semana 5: Diseño de Interfaz de Usuario con React Native

  • Disposición Flexbox en React Native
    • Comprensión de Flexbox para diseños responsivos
    • Creación de disposiciones basadas en columnas y filas
    • Estilizado de componentes de UI con propiedades de Flexbox (justifyContent, alignItems, etc.)
  • Componentes de React Native
    • Trabajo con componentes principales como Text, View, TextInput y Button
    • Creación de elementos de UI interactivos como formularios y botones
    • Uso del componente ScrollView para contenido dinámico

Semana 6: Manejo de Datos en iOS y Android

  • Manejo de datos en iOS
    • Uso de UserDefaults para persistencia simple de datos
    • Introducción a Core Data para almacenamiento local de datos complejos
    • Obtención de datos de APIs usando URLSession
    • Análisis de datos JSON y su visualización en la interfaz de usuario
  • Manejo de datos en Android
    • Uso de SharedPreferences para almacenar pequeñas cantidades de datos
    • Introducción a SQLite y Room Persistence Library para la gestión de bases de datos
    • Obtención de datos de APIs usando Retrofit
    • Análisis de JSON y manejo de respuestas de API

Semana 7: Gestión de Estado y APIs en React Native

  • Estado y Props en React Native
    • Gestión del flujo de datos dentro de los componentes de React Native
    • Uso del hook useState para gestionar el estado local del componente
    • Paso de datos entre componentes padres e hijos mediante props
  • Obtención de datos en React Native
    • Uso de la API Fetch y Axios para realizar solicitudes HTTP
    • Visualización de datos obtenidos en listas (usando FlatList, SectionList)
    • Persistencia local de datos usando AsyncStorage en React Native

Semana 8: Navegación en iOS y Android

  • Navegación en iOS
    • Introducción a los controladores de navegación y gestión de múltiples pantallas
    • Uso de transiciones (segues) para navegar entre controladores de vista
    • Paso de datos entre controladores de vista
    • Implementación de TabBar y NavigationBar para una navegación estructurada
  • Navegación en Android
    • Trabajo con Activities e Intents para aplicaciones multi-pantalla
    • Paso de datos entre Activities usando Bundles
    • Creación de un Navigation Drawer y BottomNavigationView
    • Implementación de fragments para una navegación flexible de la interfaz de usuario

Semana 9: Navegación en React Native

  • Fundamentos de React Navigation
    • Instalación y configuración de React Navigation
    • Uso de Stack Navigator para transiciones entre pantallas
    • Implementación de Tab Navigator y Drawer Navigator para navegación compleja
    • Paso de parámetros entre pantallas y gestión del estado de navegación

Semana 10: Funciones Avanzadas

  • Funciones Avanzadas en iOS:
    • Ubicación central y mapas
      • Acceso a la ubicación del dispositivo con Core Location
      • Visualización de mapas usando MapKit
      • Gestión de geolocalización y seguimiento de la ubicación del usuario
    • Cámara y multimedia
      • Acceso a la cámara del dispositivo y biblioteca de fotos
      • Captura y visualización de imágenes con UIImagePickerController
      • Almacenamiento y recuperación de archivos multimedia
  • Funciones Avanzadas en Android
    • Ubicación y mapas
      • Uso de la API de Google Maps para mostrar mapas y la ubicación del usuario
      • Acceso a datos GPS y gestión de geolocalización
    • Cámara y multimedia
      • Uso de CameraX para capturar fotos y manejar permisos de cámara
      • Visualización de imágenes y gestión de almacenamiento de archivos multimedia
  • Funciones Avanzadas en React Native
    • Mapas en React Native
      • Integración de mapas usando react-native-maps
      • Gestión de servicios basados en ubicación (geolocalización, mapeo de rutas)
    • Acceso a cámara y multimedia
      • Uso de la librería React Native Camera para capturar fotos
      • Acceso al almacenamiento de medios del dispositivo y manejo de archivos

Semana 11: Depuración y Pruebas

  • Depuración y pruebas en iOS
    • Uso del depurador de Xcode
      • Configuración de puntos de interrupción e inspección de variables en Xcode
      • Uso de la consola para depuración en tiempo real
      • Problemas comunes de depuración y cómo resolverlos
    • Pruebas unitarias en iOS
      • Escritura y ejecución de pruebas unitarias usando el framework XCTest
      • Simulación de objetos y pruebas de componentes de UI
  • Depuración y pruebas en Android
    • Uso de Logcat en Android Studio
      • Registro y análisis de errores usando Logcat
      • Depuración de aplicaciones de Android con puntos de interrupción
    • Pruebas unitarias en Android
      • Escritura de pruebas unitarias usando JUnit
      • Prueba de componentes de UI de Android con Espresso
  • Depuración y pruebas en React Native
    • Herramientas de depuración de React Native
      • Uso de Chrome DevTools y React Native Debugger para depuración en tiempo real
      • Registros de consola e inspección de solicitudes de red
    • Pruebas unitarias en React Native
      • Escritura de pruebas unitarias usando Jest y Enzyme
      • Prueba de componentes de React Native y gestión de casos de prueba

Semana 12: Despliegue de Aplicaciones y Proyecto Final

  • Despliegue y distribución
    • Presentación de aplicaciones a la App Store de iOS
      • Preparación de la aplicación para distribución (iconos, certificados, perfiles de aprovisionamiento)
      • Uso de App Store Connect para enviar la aplicación a revisión
      • Uso de TestFlight para pruebas beta
    • Presentación de aplicaciones a Google Play Store
      • Preparación del APK y firma de la aplicación para distribución
      • Uso de Google Play Console para la presentación y seguimiento de la aplicación
      • Comprensión de políticas y directrices de Google Play Store
  • Desarrollo del Proyecto Final
    • Desarrollo del proyecto final
      • Construcción de una aplicación completamente funcional a su elección
      • Incorporación de funciones avanzadas como llamadas a API, navegación, medios y ubicación
      • Presentación y demostración de la aplicación final ante compañeros e instructores

Resumen y Próximos Pasos

Requerimientos

  • Comprensión básica de conceptos de programación
  • Conocimientos básicos de JavaScript

Público Objetivo

  • Desarrolladores móviles
  • Programadores
 420 Horas

Número de participantes


Precio por participante

Testimonios (4)

Próximos cursos

Categorías Relacionadas