Contacta con nosotros

Temario del curso

Conceptos básicos de programación

  • Conceptos de POO (Programación Orientada a Objetos)
  • ¿Qué es un software?
  • Concepto de espacios organizados versus desorganizados en programación
  • ¿Por qué software?

¿Por qué Apple y iOS?

  • ¿Por qué iOS?
  • Historia de Apple
  • Historia de iOS
  • Propuesta de valor única (USP) de Apple
  • ¿Por qué es famosa Apple?
  • UX frente a UI

Entorno de desarrollo

  • Requisitos del entorno de desarrollo
  • Xcode y el SDK de iOS
  • Registro de desarrollador en Apple
  • Causas comunes de rechazo de aplicaciones
  • Guías de interfaz humana

Proyectos iOS en Xcode

  • Visión general de Xcode
  • Creación de un proyecto iOS
  • Ejecución en simulador y en dispositivos reales

Fundamentos de Swift

  • ¿Por qué Objective-C y ahora Swift?
  • Aspectos destacados de Swift
  • Variables
  • Constantes
  • Hola mundo en Swift
  • Creación de UILabel mediante código

Animación y carga de imágenes

  • UIImageView
  • Animaciones básicas de UIView y UIImageView
  • Playground
  • Carga diferida (lazy loading) de imágenes
  • Propiedades diferidas (lazy)

Clases y pantallas en Swift

  • Creación de clases en Swift
  • Gestión de memoria
  • Referencias fuertes y débiles
  • Tipos de constructores y destructores en Swift
  • Protocolos, Hashable y Printable
  • Herencia
  • Creación de pantallas
  • Implementación de controladores de vista (View Controllers)
  • Playground

Ciclo de vida y cadena de respondedores

  • Ciclo de vida de la vista
  • Ciclo de vida de la aplicación
  • Cadena de respondedores: métodos touchBegan, touchMoved, etc.
  • NSTimer

Diseño adaptativo

  • Storyboards frente a XiB
  • Soporte para múltiples dispositivos
  • Tamaño de iconos y orientación del dispositivo
  • Construcción de interfaces de usuario mediante código
  • Salidas (Outlets) y acciones
  • Protocolos: obligatorios y opcionales
  • Gestión de memoria

Notificaciones y localización

  • Notificaciones push: silenciosas y visibles
  • Localización

Visión general de Objective-C

  • Propiedades
  • Categorías
  • Sintaxis de funciones
  • Atributos de propiedad readWrite y readOnly

Integración de redes sociales en iOS:

  • Integración con Facebook
  • Integración con Twitter
  • Integración de correo electrónico
  • Integración de aplicaciones de terceros

Componentes de interfaz de usuario (UI) en iOS:

  • UITextField
  • UITextView
  • UISegmentedControl
  • UISlider
  • UISwitch
  • UIProgressBar
  • UIPageControl
  • UIStepper
  • UIScrollView
  • UIPickerView
  • UIActionSheet
  • UIWebView
  • SearchBar

Otros componentes básicos y complementarios en iOS:

  • Grupos y carpetas
  • Clausuras (Closures)
  • Tuplas
  • URL Session
  • URLRequest
  • UIAlertView
  • UIActivityIndicatorView
  • Ámbitos: internal, public, private
  • Guard
  • Opcionales (Optionals)

Hilos (Threading) en iOS:

  • GCD (Grand Central Dispatch)
  • NSOperationQueue
  • Hilo principal e hilos en segundo plano

Interacción del usuario

  • Botones y manejadores
  • Reconocimiento de gestos de desplazamiento (pan)
  • Reconocimiento de gestos de toque (tap)
  • Tablas personalizadas (Custom Table View)
  • Fundamentos de las colecciones (Collection View)

Aplicaciones con múltiples pantallas

  • Navegación mediante tablas
  • Aplicaciones con pestañas
  • Controladores de navegación
  • Presentación de controladores y diferentes animaciones al presentar o impulsar controladores

Servicios de ubicación

  • Posición y altitud
  • Dirección de la brújula

Acceso y almacenamiento en el dispositivo

  • Almacenamiento de archivos
  • Acceso a la biblioteca de música
  • CoreData y SQLite en iOS
  • Cadena de claves (Keychain)
  • Preferencias del usuario (User Defaults)
  • PLists
  • NSSearchDomain
  • Concepto de directorio y seguridad de aplicaciones en NSSearchDomain

Framework de reconocimiento de voz

  • De voz a texto
  • De texto a voz

Framework Multipeer

  • Envío de datos entre dispositivos
  • Conexión de múltiples dispositivos

Redes

  • Acceso a redes
  • Serialización y deserialización de JSON
  • Servicios web REST
  • Fundamentos de análisis XML (XML Parsing)

Publicación de aplicaciones en App Store

  • iTunes Connect
  • Portal de desarrollador: perfiles de aprovisionamiento
  • Despliegue y distribución
  • Ejecución de aplicaciones en dispositivos reales
  • Carga de aplicaciones en App Store

Aplicaciones prácticas

  • Juego Dots: https://itunes.apple.com/app/the-dots-free/id850315430
  • Aplicación de notas: Notes App
  • Aplicación de contactos
  • Obtención de datos desde un servidor mediante una API abierta, creación de una tabla para mostrarlos, visualización de detalles, barra de búsqueda para consultas y uso de CoreData para guardar datos de forma offline
  • Aplicación basada en una idea propia

Requerimientos

Es indispensable haber tenido experiencia previa con al menos un lenguaje de programación.

 35 Horas

Número de participantes


Precio por participante

Testimonios (2)

Próximos cursos

Categorías Relacionadas