Desarrollo de aplicaciones para dispositivos iOS
¡Inscríbete Gratis!

Información adicional
Duracion | 300h. |
---|---|
Inicio | Matricula Abierta |
Situación Laboral | Desempleados |
Sector | Cualquier sector |
Ámbito | Comunidad de Madrid |
Modalidad | Presencial |
Temario
MÓDULOS FORMATIVOS
Módulo nº 1
Entorno Xcode, lenguaje Swift y framework Cocoa Touch
Objetivo: Crear una aplicación con navegación entre varias vistas partiendo de una plantilla Single View App en Xcode.
Duración: 70 horas
Contenidos teórico-prácticos
Introducción a Xcode y Swift
Módulos de Xcode
Lenguaje Swift:
Estructuras de control, bucles, funciones
Clases, estructuras, enumeraciones, tuplas
Propiedades, inicializadores, métodos
Opcionales, arrays, diccionarios
Cocoa Touch
Ciclo de vida de una aplicación
Protocolos y delegados
Creación y ejecución de una aplicación simple
Storyboards e Interface Builder
UIViewController y UIView
Modelo-Vista-Controlador (MVC)
Introducción a Auto Layout
Outlets y actions
Simuladores iOS
Primeras nociones sobre debugging
Git, GitHub, Markdown
Proyecto final: skeleton, storyboard, repositorio Git
Competencias transversales
Búsqueda de información
Organización personal
Trabajo en equipo
Investigación de nuevos conceptos
Planificación y ejecución de proyectos
Módulo nº 2
Creación de la interfaz de usuario y navegación entre vistas
Objetivo: Crear una aplicación que muestre información dinámica mediante tablas con celdas personalizadas y que utilice distintas técnicas de navegación entre vistas.
Duración: 70 horas
Contenidos teórico-prácticos
Arquitectura de una aplicación
UINavigationController y UITabBarController
Composición con Container View Controller
Navegación mediante segues
Proyecto final: arquitectura de navegación
Presentación de información dinámica mediante tablas
UITableView y UITableViewController
Celdas personalizadas con subclases de UITableViewCell
Proyecto final: tabla con datos procedentes de array estático
Interfaz de usuario – UI
Auto Layout:
Uso de UIStackView con UIScrollView
Modificación dinámica de constraints
Animaciones de vistas
Introducción de texto con UITextField
Gestión de assets
Reconocimiento de gestos de usuario
Competencias transversales
Organización personal
Gestión de grandes volúmenes de información
Trabajo en equipo
Investigación de nuevos conceptos
Planificación y ejecución de proyectos
Módulo nº 3
Recuperación, manipulación y almacenaje de datos en local y remoto
Objetivo: Integrar el servicio Firebase en una aplicación para recuperar datos desde el servidor, mapearlos en clases o estructuras propias y almacenarlos localmente.
Duración: 80 horas
Contenidos teórico-prácticos
Uso de librerías de terceros mediante integración directa SDK
Firebase
Google Maps
Gestión de datos en una aplicación
Integración del backend Firebase
Manipulación de datos en formato JSON
Almacenaje local de información:
Sistema de ficheros
UserDefaults
Creación e integración Firebase
Tabla con datos procedentes de backend
Swift avanzado
Programación multihilo
Programación funcional: map, filter, reduce, sort
Equivalencias con Objective-C
Tareas en segundo plano
Competencias transversales
Adaptabilidad ante estructuras de información dispares
Gestión de grandes volúmenes de información
Trabajo en equipo
Investigación de nuevos conceptos y exposición oral de conclusiones
Planificación y ejecución de proyectos
Módulo nº 4
Notificaciones y uso de librerías de Apple y terceros
Objetivo: Añadir a una aplicación librerías propias de Apple y de terceros que permitan posicionar al usuario en un mapa, incluyendo animaciones personalizadas en la transición entre distintas vistas.
Duración: 80 horas
Contenidos teórico-prácticos
Comunicación de eventos
Key-Value Observing
NotificationCenter y registro de observadores
Notificaciones locales
Lanzar notificaciones
Uso de librerías de Cocoa Touch
Mapas (MapKit)
Localización (Core Location)
Acelerómetro (Core Motion)
Mapas y geoposicionamiento
Uso de librerías de terceros con CocoaPods
CocoaPods: funcionamiento y alternativas
Realm
Hero
Kingfisher
Configuración CocoaPods
Integración librería de terceros (Realm)
Competencias transversales
Creatividad e imaginación
Resolución de problemas
Orientación a resultados
Gestión del tiempo
Planificación y ejecución de proyectos
Comunicación mediante exposición oral de un proyecto