Temario del curso
Conceptos básicos de programación
- Conceptos de POO
- Qué es un software
- Concepto de habitaciones organizadas versus desorganizadas en programación
- Por qué el software
Por qué Apple e iOS
- Por qué iOS
- Historia de Apple
- Historia de iOS
- Punto de venta único (USP) de Apple
- De qué es famosa Apple
- Experiencia de usuario (UX) versus Interfaz de usuario (UI)
Ambiente de desarrollo
- Requisitos del entorno de desarrollo
- Xcode y el SDK de iOS
- Registro de desarrolladores de Apple
- Razones por las que las aplicaciones son rechazadas
- Directrices de interfaz humana
Proyectos iOS en Xcode
- Visión general de Xcode
- Creación de un proyecto iOS
- Ejecución en simulador y dispositivos reales
Fundamentos de Swift
- ¿Por qué Objective-C y ahora por qué Swift?
- Aspectos destacados de Swift
- Variables
- Constantes
- Hola Mundo en Swift
- Creación de UILabel mediante código
Animación de imágenes y carga de imágenes
- UIImageView
- Animaciones básicas de UIView e UIImageView
- Playground
- Carga diferida de imágenes
- Propiedades diferidas
Clases y escenas en Swift
- Creación de clases 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 escenas
- Implementación de controladores de vista
- 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 adaptable
- Storyboards versus XIB
- Soporte para múltiples dispositivos
- Tamaño de iconos y orientación del dispositivo
- Construcción de una interfaz de usuario mediante código
- Outlets y acciones
- Protocolos: requeridos y opcionales
- Gestión de memoria
Notificaciones y localización
- Notificaciones push: silenciosas y push
- Localización
Visión general de Objective-C
- Propiedades
- Categorías
- Sintaxis de funciones
- Atributos de propiedades: lectura-escritura y solo lectura
Integración de redes sociales en iOS:
- Integración con Facebook
- Integración con Twitter
- Integración de correo electrónico
- Integración de una aplicación de terceros
Componentes de UI en iOS:
- UITextField
- UITextView
- UISegmentedControl
- UISlider
- UISwitch
- UIProgressBar
- UIPageControl
- UIStepper
- UIScrollView
- UIPicker
- UIActionSheet
- UIWebView
- Barra de búsqueda
Algunos componentes básicos adicionales y otros en iOS:
- Grupos y carpetas
- Closures
- Tuplas
- URLSession
- URLRequest
- UIAlertView
- UIActivityIndicatorView
- internal, public, private
- Guard
- Opcionales
Hilos en iOS:
- GCD
- NSOperationQueue
- Hilo principal e hilos en segundo plano
Interacción del usuario
- Botones y manejadores
- Reconocimiento de gestos de deslizar (pan)
- Reconocimiento de gestos de toque (tap)
- TableView personalizado
- Fundamentos de CollectionView
Aplicaciones de múltiples pantallas
- Navegación de tablas
- Aplicaciones con pestañas
- Controladores de navegación
- Presentación de un controlador y diferentes animaciones al presentar y pasar controladores
Servicios de ubicación
- Posición y altitud
- Dirección de la brújula
Acceso a dispositivos y almacenamiento
- Almacenamiento de archivos
- Acceso a la biblioteca de música
- CoreData y SQLite en iOS
- Keychain
- Valores predeterminados de usuario
- PList
- NSSearchPathForDirectoriesInDomains
- Concepto de directorios y seguridad de aplicaciones NSSearchPathForDirectoriesInDomains
Speech Framework
- Texto a partir de voz
- Voz a partir de texto
Multipeer Framework
- Envío de datos de un dispositivo a otro
- Conexión de múltiples dispositivos
Redes
- Acceso a la red
- Serialización y deserialización de JSON
- Servicios web REST
- Fundamentos del análisis de XML
Carga de aplicaciones en la App Store
- iTunes Connect
- Portal de desarrolladores - Perfiles de aprovisionamiento
- Implementación y distribución
- Ejecución de aplicaciones en dispositivos reales
- Carga de la aplicación a la App Store
Aplicaciones
- Juego Dots: https://itunes.apple.com/app/the-dots-free/id850315430
- Aplicación de notas: Notas
- Aplicación de contactos
- Obtención de datos de un servidor a través de una API abierta, crear una vista de tabla, poblarla con datos, mostrar sus detalles también, mostrar una barra de búsqueda y buscar algo, y usar CoreData para guardar datos sin conexión
- Aplicación basada en tu propia idea
Requerimientos
Debes tener al menos experiencia previa en un lenguaje de programación.
Testimonios (1)
He's an experienced trainer with a real life experience in the topic he was teaching. That led the course to cover the most important topics which interests any developer working in the field, and small details would be easily overseen if he was not working in this platform. Moreover, he was giving the course using the latest versions of is and Swift (10 \ 3) and that is a huge advantage to be adapting such new technology in short time.
Abdullah Alaradi - Thiqah Business Services
Curso - iPhone and iPad Development in Swift for iOS 8 and Xcode 6
Traducción Automática