Temario del curso
Día 1:
- Conceptos de POO
- ¿Qué es el software?
- Habitaciones organizadas frente a desorganizadas
- ¿Por qué software?
- ¿Por qué iOS?
- Historia de Apple
- Historia de iOS
- Ventaja competitiva única (USP) de Apple
- De qué es famosa Apple
- Experiencia de usuario (UX) frente a interfaz de usuario (UI)
- ¿Qué es un IDE?
- Xcode
- Instalación de Xcode
- ¿Por qué Objective-C y ahora por qué Swift?
- Aspectos destacables de Swift
- Fundamentos de Swift
- Variables
- Constantes
- "Hola Mundo" en Swift
- Creación de etiquetas mediante código
- ImageView
- Animaciones en ImageView
- NSTimer
- Cadena de respondedores: métodos touchBegan, touchMoved, etc.
- Delegado principal de UiApplication
- Ciclo de vida de la aplicación
- Ciclo de vida de la vista
- Any
- Opcionales
- internal, public, private
- init
- deinit
- Playground
Aplicación a realizar: Juego de puntos: https://apps.apple.com/app/the-dots-free/id850315430
Día 2:
- Animaciones en UIView
- Extensiones
- UITable View
- Celdas personalizadas en Table View
- Métodos de delegados y fuente de datos en delegados
- Encabezado, pie, altura, etc. de Table View
- Reseña de Collection View
- Desencuadre (Deque) en Table View
- Mark
- Opcionales
- didSet
- willSet
- Guard
- Conceptos de escalas 2x y 3x
- Navegación entre vistas
- UINavigationController
- Presentar un controlador
- Storyboards
- Xibs
- Restricciones
- Clases de tamaño
- Protocolos: requeridos y opcionales
- Gestión de memoria
Aplicación a realizar: Aplicación de notas: agregar, eliminar y actualizar notas
Días 3:
- Gestos
- Closures
- Grupos y carpetas
- Reconocedores de gestos
- Análisis de XML
- Serialización de NSJSON
- Conversión de datos a JSON
- Gestor de archivos
- Tuplas
- Enum
- For-in
- While
- Servicios web
- URLSession
- URLRequest
- ¿Por qué el ecosistema de Apple es el mejor?
- Printable - descripción
- Hashable
- UIAlertView
- UIActivityIndicatorView
Aplicación a realizar: Obtener datos del servidor desde una API de código abierto y crear una tabla para poblar los datos y mostrar sus detalles.
Días 4:
- Carga diferida de imágenes
- Propiedades diferidas
- NSOperationQueue
- GCD
- Concepto de directorios y seguridad de las aplicaciones en NSSearchDomain
- Tab Bar controller
- Localización
- Llavero (Keychain)
- User Defaults
- Archivos PLists
- FileManager
- SQLite
- Extensiones
- Integración de redes sociales: crear contenido propio compartible
- UITextField
- UITextView
- UISegmentedControl
- UISlider
- UISwitch
- UIProgressView
- UIPageControl
- UIStepper
- UIScrollView
- UIPickerView
- UIActionSheet
- UIWebView
- SearchBar
- Nuevo objetivo: Apple Watch, extensiones, teclados, widgets, etc.
- Notificaciones NSNotifications en iOS
- Agregado de bibliotecas de terceros
- Core Data
- Despliegue y distribución
- Ejecución de la aplicación en dispositivos reales
Aplicación a realizar: Obtener datos del servidor desde una API de código abierto, crear una tabla para poblar los datos, mostrar sus detalles, incluir una barra de búsqueda y realizar búsquedas, además de utilizar Core
Día 5:
- Notificaciones push: silenciosas y estándar
- Localización
- Reseña de Objective-C
- Propiedades
- Categorías
- Sintaxis de funciones
- Archivos .h y .m
- Atributos de propiedades: readWrite y readOnly
- Atributos de propiedades: strong, weak y copy
- Atributos de propiedades: atomic y non-atomic
- Carga de la aplicación a la App Store
Aplicación de tu propia idea
Requerimientos
Debe contar con experiencia previa en al menos 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