Udemy

Platform

Español

Language

Mobile Apps

Category

Curso Completo de iOS 10 y Swift 3: de Cero a Experto con JB

El Curso más actualizado de iOS 10 y Swift 3 en español. Desarrollo completo de apps móviles para iPhone y iPad en Swift

4.30 (2046 reviews)

Students

48.5 hours

Content

Jan 2020

Last Update
Regular Price

SKILLSHARE
SkillShare
Unlimited access to 30 000 Premium SkillShare courses
30-DAY FREE TRIAL

What you will learn

Conocer y saber utilizar Xcode 8

Saber utilizar Swift 3, el nuevo lenguaje de programación de Apple para iOS 10

Conocer los nuevos frameworks de desarrollo como Messages, Speech o Siri Kit

Aprender en base no solo a los vídeos que muestran los frameworks básicos de desarrollo, si no a plantearse y resolver retos que se irán planteando durante el curso en forma de concursos y ejercicios adicionales.

Utilizar un control de versiones en forma de repositorio Github o Bitbucket

Saber documentarse y expandir conocimientos con frameworks avanzados como Core Data, CloudKit, AVFoundation...

Crear apps basadas en servidores remotos, montando el tuyo propio con Parse y Amazon Web Services


Description

* El primer curso completo en español de desarrollo de apps para iOS 10 en Udemy sobre Swift 3 *

Swift 3 fue lanzado el 13 de junio de 2016. Obtener un buen inicio en la última versión del Swift antes que los demás es vital para tener garantías de éxito como programador!

¿Alguna vez has querido probar a cabo la programación de apps? ¿Has tratado de aprender Swift, sólo para estar harto de los incompletos tutoriales de YouTube o las clases o documentación en inglés? ¿Has empezado a migrar código de Swift 2 a 3?

Pues entonces no busques más, pues este curso es para ti. 

En este curso,  Swift 3 es el protagonista. En es aprenderemos la información básica que tienes que saber para iniciarte en Swift 3. Yo mismo, Juan Gabriel Gomila, soy matemático, y en el mundo de la programación de apps, me he formado de forma  autodidacta, así que sé lo que se siente al comenzar desde cero en este mundillo. Mi objetivo fundamental es que vosotros, futuros estudiantes aprendáis con garantías de éxito. Si no me crees, échale un vistazo al resto de mis cursos y observa qué opinan los estudiantes de los mismos. Su palabra vale más que cualquier justificación que te quiera dar yo mismo.

Creo que se aprende mejor haciendo cosas, por tanto el formato será de clases en vídeo, seguidas por un ejercicio para ponerte a prueba, algún que otro examen a final de cada sección e incluso combinaremos las partes más teóricas de conceptos, con aspectos más prácticos llevando a cabo desarrollo de apps totalmente funcionales. Este formato te permitirá aprender  Swift en todo su esplendor y no solamente seguir las clases como un robot.

Swift se convirtió en un lenguaje Open Source en diciembre de 2015 por lo que ahora podrás hacer tus propias apps y seguir este curso tanto en Mac, como en Windows como en Linux!

Swift, un lenguaje moderno evolucionado a partir de Objective-C

Swift es un lenguaje de programación multi-paradigma desarrollado por Apple para su uso con iOS y OS X. Diseñado para reemplazar Objective C, se inició el proyecto Swift en 2010 y la primera aplicación móvil se estrenó en junio de 2014 a la Conferencia Mundial de Desarrolladores. A pesar de su objetivo de reemplazar Objective C, Swift es capaz de trabajar junto con el lenguaje Objective-C  más anticuado durante el uso de los frameworks de Cocoa Touch y Foundation.

Swift se construye con el compilador LLVM incluido desde Xcode 6 beta, y utiliza el tiempo de ejecución de Objective-C, lo que permite utilizar Objective-C, Objective-C ++ y  Swift para funcionar dentro de un mismo programa. Durante su debut, Swift fue descrito como "Objective C sin la C" por el Vicepresidente de Ingeniería de Software Craig Federighi de Apple.

Contenido e Información general

En este curso, se te conducirá a través de la creación de Swift a nivel local, el lenguaje en su totalidad, cómo se compara con otros lenguajes comunes (incluyendo Objective C), y la forma de empezar a trabajar en nuevos proyectos. En particular la estructura del curso cubre:

Parte I : Aprender Swift 3

Enfocado a aprender las bases de Swift 3, la sintaxis, el uso de las clases y la correcta gramática del lenguaje de programación, incluyendo

  • Variables y constantes
  • Strings, Enteros, Decimales y Booleanos
  • Arrays y Diccionarios
  • Valores opcionales, requeridos y nulos
  • Operadores de decisión y de iteración
  • Programación Orientada a Objetos, Atributos, Métodos y Herencia
  • Patrones de programación y diseño lógico

Parte II : Diseño de apps 

Enfocado a aprender el diseño de aplicaciones funcionales haciendo uso de:

  • Diseño de interfaces con Storyboards y los elementos de UIKit: UILabel, UITextField, UIButton, UISlider, UIView...
  • Diseño responsive, Autolayout, Size Classes y Stock Views
  • Animaciones de elementos gráficos
  • Modelos, Vistas y Controladores
  • UIViewController, UITableViewController, UICollectionViewController, UISearchController,... 
  • Novedades en iOS 10: Messages, Stickers, Speech, SiriKit...

Parte III : Proyectos completos

Enfocado a combinar todo lo aprendido durante el curso para hacer proyectos grandes, totalmente funcionales con el código fuente disponible para ser usado o incluso vendido en la App Store:

  • Mis Recetas, un recetario completo para crear, modificar, guardar recetas, compartirlas en redes sociales...
  • Los días de gloria, una app que incluye la opción de importar fotos de la librería y documentarlas con texto oral y transcripciones como si se tratara de un álbum de fotos.
  • Lugares, una app completa de lugares, ubicación geográfica, compartir en redes, guardar en base de datos, en la nube con iCloud, con buscadores, localizada para diferentes idiomas...


El curso está diseñado para proporcionar una visión completa de Swift, para que puedas  experimentar de forma inmediata. Al finalizar,  entenderás cualquier fragmento de código Swift y será capaz de desarrollar diversas aplicaciones personalizadas tanto a nivel visual como de programación. También obtendrá experiencia de trabajo con nuevo archivo .playground de Xcode que permite la escritura de código mucho más rápido y dinámico. 

El material del curso se actualiza periódicamente para incluir todas las actualizaciones más recientes e información. No olvides que solo por registrarte tienes acceso de por vida al curso, lo cual te da motivos más que de sobra para venir de vez en cuando y ver qué hay de nuevo en Swift.


Screenshots

Curso Completo de iOS 10 y Swift 3: de Cero a Experto con JB
Curso Completo de iOS 10 y Swift 3: de Cero a Experto con JB
Curso Completo de iOS 10 y Swift 3: de Cero a Experto con JB
Curso Completo de iOS 10 y Swift 3: de Cero a Experto con JB

Content

Contenidos y requisitos del curso

Introducción

Tu instructor: Juan Gabriel Gomila

Comunidad de estudiantes del curso

Cómo hacer el curso si tengo Windows - Mac In Cloud

Descargar Xcode 8 Beta

Descargar Xcode 8 desde la Mac App Store

Cambios en las betas de Xcode 8

Variables y constantes

Contenidos del tema

Mi primer playground

Variables

Ejercicio de variables

Las variables cambian

Ejercicio de cambio de valor en las variables

Las constantes

Ejercicio de constantes

Variables y constantes

¿Qué hemos aprendido?

Cambios en Swift 3

Contenidos del tema

ABI Stabilization

Los operadores de C: ++ y --

Los nuevos bucles for

Parámetros en las funciones

Enumerados

Acortar nombres de métodos y funciones

Desaparecen las clases de Next Step

Extensiones de clases

Cambios en las clases de Core Graphics

Los métodos de la clase String

La herramienta para migraciones automáticas de Xcode 8

¿Qué hemos aprendido?

Xcode 8 ya disponible y cómo corregir errores de las betas (y de los vídeos)

Cómo personalizar Xcode

Un regalo por ser alumno de Juan Gabriel

Enteros y Strings

Contenidos del tema

La clase String

Ejercicios con Strings

Emojis

Ejercicios con Emojis

Los números enteros

Ejercicio con Enteros

String interpolation

Ejercicios de enteros y strings

Enteros y Strings

¿Qué hemos aprendido?

App 1: Hola Mundo

Contenidos del tema

Crear el primer proyecto

Un tour por Xcode

El uso de los UIButtons

El uso de UIAlertController y UIAlertAction

El uso de las UILabels

El uso de los UITextFields

El uso de UIImageView

Mejoras de nuestra app

Los errores más típicos cuando creáis una app

Reto 1: Hola mundo

¿Qué hemos aprendido?

Descarga el código fuente de la App 1

Matemáticas, Floats y Doubles

Contenidos del tema

Aritmética elemental

Ejercicios de aritmética

Números decimales, floats y doubles

Ejercicios con decimales

Castings

Ejercicios de castings

Matemáticas avanzadas, el framework de Foundation

Ejercicio de matemáticas

¿Qué hemos aprendido?

¿Que te parece este curso?

Operadores de decisión y booleanos

Contenidos del tema

El tipo de datos booleano

Ejercicio de booleanos

La sentencia de decisión if

Ejercicios con if

Comparaciones con decisiones

Ejercicio de comparación

La sentencia de decisión else

Ejercicio con else

Los operadores and y or

Ejercicios con and y or

Booleanos

¿Qué hemos aprendido?

App 2: De Millas a Kilómetros

Contenidos del tema

Creando la vista

Unir la vista y el controlador

La conversión de millas a kilómetros, castings

Mostrando los resultados por pantalla

Refactorización, cómo limpiar nuestro código

Las limitaciones de nuestra app

Reto 2.1: Mejoremos la app con los conocimientos que tenemos

Reto 2.2: Nuevas apps y propuestas

¿Qué hemos aprendido?

Descarga el código fuente de la App 2

Comentarios y impresiones por consola

Contenidos del tema

Comentarios

Ejercicio de comentarios

Imprimir por consola

Ejercicios de imprimir por consola

Crear una app desde cero

Imprimir y comentarios

¿Qué hemos aprendido?

Los switchs

Contenidos del tema

Los Switchs

Ejercicios con Switchs

Los defaults en un Switch

Ejercicios con Switch y Defaults

Multiples opciones e intervalos en un mismo case de un Switch

Ejercicios con múltiples cases de un switch

¿Qué hemos aprendido?

App 3: ¿Qué tiempo hace?

Contenidos del tema

Los Storyboards universales

Diseñando una vista

El concepto de autolayout

Libertad del autolayout con imágenes

El asistente de previsualización

Añadiendo las etiquetas de texto

Las Size Classes, diferentes configuraciones para diferentes dispositivos

Size classes para el tamaño de las fuentes

Reto 3: Size Classes y Autolayouts

¿Qué hemos aprendido?

Descarga el código fuente de la App 3

Los arrays y diccionarios

Contenidos del tema

Los arrays

Ejercicios de arrays

Añadir objetos a un array

Ejercicios para añadir objetos a arrays

Acceder y modificar elementos de un array

Ejercicios sobre acceso y modificación de elementos de un array

Inserción y borrado de elementos de arrays

Ejercicios de inserción y borrado de elementos de arrays

Consultar existencia y posición en un array

Ejercicios de consulta sobre arrays

Más cosas sobre arrays

Llevamos medio tema, a seguir!

Diccionarios

Ejercicios con diccionarios

Métodos con Diccionarios

Ejercicios de métodos con diccionarios

¿Qué hemos aprendido?

Optionals

Contenidos del tema

El nil

Ejercicios de nil

Optionals vs Required

Ejercicios de optionals y required

Optional bindings explicados

App 2: arreglando los errores de nuestro conversor de unidades

¿Qué hemos aprendido?

App 4: La tienda de JB

Contenidos del tema

Las Stack Views, una herramienta de diseño muy útil

El diseño de la launch screen

Stack Views de etiquetas

Stack Views de imágenes

Stack Views de botones

Mezclando las Size Classes con las Stack Views

¿Qué hemos aprendido?

Descarga el código fuente de la App 4

Los operadores de iteración y bucles

Contenidos del tema

El bucle for

Ejercicios de bucle for

El bucle while

Ejercicios de bucle while

Bucles para recorrer arrays

Ejercicios de recorridos de arrays

Bucles para recorrer diccionarios

Ejercicios de recorrer diccionarios

¿Qué hemos aprendido?

Funciones y métodos

Contenidos del tema

Las funciones

Ejercicios de funciones

Los parámetros de entrada de una función

Ejercicios de funciones con parámetro

Los valores de retorno de una función

Ejercicios de funciones con valor de retorno

Las tuplas como valor de retorno

Ejercicios con tuplas

¿Qué hemos aprendido?

App 5: Stickers y App Stores

Contenidos del Tema

El framework de Messages

La licencia de desarrollo de Apple

El pack de Stickers

La documentación de los nuevos frameworks

Cómo hacer screenshots de la app

El logo de la app (Make App Icon)

Itunes Connect y la página de la app

El proceso de subida y validación de la app

¿Qué hemos aprendido?

Descarga el código fuente de la App 5

Programación orientada a objetos

Los contenidos del tema

Crear una clase

Las propiedades de una clase

El truco de las computed properties

Las imágenes en el modelo de datos. El diseño de la vista

La factoría de coches, un garaje de lujo

Animaciones y transiciones

Los métodos de las clases

¿Qué hemos aprendido?

Proyecto 1: Mis recetas de cocina

Contenidos del proyecto

Introducción a los UITableViewController y a los patrones de delegación

Las Recetas, el modelo de datos de la app

El protocolo UITableViewDataSource y sus métodos

UITableViewCell con imágenes

Otra forma de añadir tablas con extensiones UIViewController,UITableViewDelegate

Celdas personalizadas, subclases de UITableViewCell

Un truco de diseño: imágenes circulares

Reto: diseña tus propias celdas

Interactuar con las tablas: recetas favoritas

MVC: Modelo, Vista, Controlador

Deslizar una fila para borrar una receta de la tabla

Más acciones al deslizar las celdas, compartir en redes sociales.

Navegación y segues

La receta detallada, cómo pasar información entre controladores

Mejorando la vista detallada, el truco de la image view escalada

La información completa de la receta

Reto: Rellenar toda la información de la receta

La apariencia de la tabla y de la barra de navegación

Los tipos dinámicos y las celdas auto ajustables

Valorar nuestra receta

Diálogos animados y transformaciones afines de vistas

Unwind segues y transferencia de información

Reto: una última refactorización de orientiación a objetos

Fin del proyecto

Descarga el proyecto 1

Control de versiones y repositorios Github y Bitbucket

Los controles de versiones y repositorios Git

Github, Bitbucket y Source Tree

Los commits y el repositorio en local

Los pull, push y subidas a repositorios remotos

Control de versiones en Xcode

Los tipos de datos genéricos

App 6: El framework de Speech Recognizer

Contenidos del tema

La text view para poner el texto

Cómo añadir un framework a un proyecto con Swift

El uso de SFSpeechRecognizer

Pedir permiso a los usuarios y probar en un dispositivo de verdad

Configurar la grabación de audio

La lógica de grabación de audio

1, 2, 3... Grabando, Grabando

Reto: timers y grabaciones de audio

¿Qué hemos aprendido?

Descarga el código fuente de la App 6

Proyecto 2: The Glory Days

Contenidos del proyecto

Cuidado con el FileManager.default!

El diseño de la vista de petición de permisos

Un nuevo controlador UICollectionView

Los controladores, IBActions y IBOutlets

La petición de los permisos

Instanciar el controlador de los permisos vía código

Importar los recuerdos del usuario

UIImagePickerController

Cambios en Image Picker Controller

Guardar el fichero de la imagen y su thumbnail

Mostrar los recuerdos del usuario en pantalla

UILongPressGestureRecognizer: cómo detectar pulsaciones largas

La grabación del audio con AVAudioRecorder

Convertir la voz a texto

Reproducir el audio e imprimir el texto convertido

El Spotlight de Apple

El buscador de nuestra App con CSSearchQuery

Fin del proyecto

Descarga el proyecto 2

App 7: Extensiones para Messages

Contenidos del tema

La extensión de los Mensajes

El ciclo de vida y la estructura de las extensiones

Crear nuestra propia app de mensajería

Reto: enviar un audio desde el dispositivo

Personalizar la interfaz y el layout de la estensión de mensajes

¿Qué hemos aprendido?

Descarga el código fuente de la App 7

Trucos de veterano

Ocultar el teclado al pulsar intro

Ocultar el teclado al pulsar en la pantalla

Un textview con placeholder

Proyecto 3: Lugares del mundo

Contenidos del proyecto (¡refactoriza para aprovechar tu tiempo!)

Refactorizar la app de recetas a la app de lugares

Añadir lugares del mundo

Reto: el teléfono y la página web de los lugares del mundo

Mapas con MapKit

Geocoder y geolocalización

Reto: Chinchetas personalizadas en nuestros mapas

Añadir un nuevo lugar - UITableView con celdas estáticas

La librería de fotos con UIImagePickerController

Autolayout a través de código

Reto: capturar la información del lugar a crear

Añadir el nuevo lugar creado a la vista principal de la app

Introducción a Core Data

Añadir y configurar Core Data en un proyecto existente

Managed Object Model

Subclases de NSManagedObjectModel

Guardar un objeto en Core Data

NSFetchRequest para cargar datos desde Core Data

El truco de NSFetchedResultsController y sus delegados

Eliminar un lugar de Core Data

Actualizar un objeto de Core Data

Un regalo para los frikis del SQL

La barra de búsqueda UISearchController

Reto: añadir los lugares originales de la app

Ejercicio: llamar y enviar SMS

Hacer una llamada con una URL

Enviar un mensaje con MFMessageComposerViewController

Visitar el sitio web del lugar

¿Qué tal llevas el proyecto?

App 8 : El tutorial

Contenidos de la App

Automator, cómo automatizar tareas pesadas

UIPageViewController y UIPageViewContent

Los métodos de UIPageViewDataSource

Activar el mostrado del tutorial

UIPageIndicator personalizado

Los botones Siguiente y Finalizar

UserDefaults y las variables de usuario persistentes

¿Qué hemos aprendido?

App 9: Apps en pestañas

Contenidos de la app

El UITabBarController

Personalizar las pestañas de la app

El truco de dividir el Storyboard

Diseñando la vista Acerca de Nosotros

Cargar contenido con UIApplication.shared()

Cargar contenido web con UIWebView

Cargar contenido web con SFSafariViewController

¿Qué hemos aprendido?

App 10: El uso de iCloud con CloudKit

iCloud y CloudKit

Habilitar y gestionar iCloud

Obtener datos de iCloud con la API Convenience

Hilos principales y secundarios: la clase OperationQueue

Obtener datos de iCloud con la API Operacional

El uso del indicador de actividad, UIActivityIndicator

Carga lenta de imágenes (lazy load)

La caché

Tirar para refrescar

Paginación gracias CKQueryCursor

Guardar datos en iCloud

Reto: mejoras a la pestaña Descubre!

Un posible resultado final

¿Qué hemos aprendido?

Descarga el proyecto 3 al completo

Proyecto Final: Mi propia red social - Tinsnappook

Contenidos del proyecto, acerca de las redes sociales

El proyecto inicial de Parse

Crear y configurar una instancia del servidor de Parse con Amazon Web Services

Seguridad ante todo: cambiar la AppID y ClientKey del proyecto de Parse

Guardar y recuperar un objeto del servidor de Parse

Las imágenes de la red social

Una launch screen y un logo bonitos

Diseño de la vista de registro

La lógica del registro de usuario

La lógica del login de usuario

La lógica del recuperar contraseña (no disponible en Parse Server)

El gran SWRevealViewController

Reto: las secciones de tu propia red social

La lista de usuarios de nuestra red social

Eliminarme de mis propios amigos

Amigos y seguidores

Tirar para refrescar

Diseño de la vista del post

La selección de fotos

Hacer un post en nuestra red social

Ver el feed de un usuario

Ver el feed (parte 2)

Factorías de usuarios

NotificationCenter para hablar entre clases

El diseño del perfil del usuario

Los datos del usuario

Actualizar el perfil de usuario

Nuestros primeros usuarios (cómo crear bots)!

La lista de mis amigos

Solo para mis amigos

Descubrir a nuevos amigos a lo Tinder

Transformaciones afines

Rellenar el perfil público de los usuarios

El perfil público de mis amigos

La geoposición encubierta: PFGeopoint

¿Donde están mis amigos?

Enviar una imagen a un amigo

Recibir una imagen de mis amigos

Reto final: El sistema de mensajería entre amigos

Bonus Final

Bonus - Un regalo para ti

Un regalo para ti


Reviews

E
Enrique17 April 2020

Excelente curso, me pareció genial la forma de explicar y tocar los temas, me hubiera gustado que se vieran peticiones a WebServices y el uso de Alamofire y eso pero en general excelente curso

G
Gerardo20 January 2020

Hola Juan... Aunque soy ingeniero en sistemas, recién incursionó en este mundo de las App's por lo que me he inscrito a tu curso. Estoy muy motivado y 110% entusiasmado, pues como te comente en el mensaje de bienvenida me especializo en SAP ASE & SAP HANA, pero siempre he querido ser independiente y esta me parece una manera interesante y divertida. Gracias Att GTG

P
Pablo21 October 2019

Excelente forma de enseñanza, se sienten las ganas de seguir el siguiente capitulo como si fuese una serie de Netflix, se toma su tiempo pero es para bien ya que aprendemos a abrazar cada tema completamente. Sin duda tomaré los siguientes!

R
Roberto24 June 2019

1.- Primero todo lo que voy a aprender y todo lo que podre lograr al final, me entusiasma 2.- La herramienta para desarrollar en windows se me hace una opción excelente, más porque mi mac es de hace unos años y ya es un poco lenta

A
Alberto23 October 2018

Se ve que el profesor tiene bastante experiencia y dominio del lenguaje que está enseñando, bastante soltura en la escritura del código.

S
Salvador25 September 2018

Creo que fue una buena elección el instructor parece estar experimentado y tener bases solidas sobre el tema.

H
Hans5 September 2018

Sin duda el mejor curso de iOS 10 y el mejor instructor. Las explicaciones son muy claras, los ejemplos útiles y concisos, las clases son entretenidas y en general un excelente curso. 100% recomendado.

J
Johan14 May 2018

me esta gustando, pero siento que a veces no avanza en el tema y como soy nuevo, todo lo de la migración me parece que no sirvió de mucho. hubo mas de una lección para Strings que no enseñaron mucho, los cuestionarios creo que no sirven.

A
Aldo6 May 2018

Excelente curso y contenido bastante completo. Me hubiese gustado que incluyera el tema de la publicación de una app en la App Store. Las explicaciones del instructor son claras y entendibles. 100% recomendado este curso.

A
Abel4 April 2018

El curso es bueno si no saben nada de programación en iOS. Si tienen algo de experiencia en programación, es mucho más fácil de entender. Recomendado!

A
Alfonso26 March 2018

Quería aprender a desarrollar en iOS, y al ver este curso me motivé a hacerlo, solo que me topé con un pequeño problema, olvidé que no tengo MacOs :'v, así que les recomiendo que si toman el curo, que por cierto, está muy bueno, tengan herramientas de Mac :v Los cursos están completos y muy bien explicados :)

L
Luis16 March 2018

Esta bien explicado pero se me actualizo xCode y hay parte de ida que no concuerda pero se sigue bien y se entiende bien. Llevo tiempo programando en otros lenguajes solo necesito adaptarme a este

I
Ilnanu12 March 2018

En general he disfrutado del curso y aprendido bastantes cosas ya que no tenía experiencia previa con Swift ni el framework de iOS. Como programador algunos conceptos ya sabidos se me hacían pesados, y sin embargo, echaba de menos profundidad en otros conceptos más específicos de la plataforma. Los ejemplos/proyectos necesitarían actualizarse tras la beta y algunas de las clases estar mejor preparadas de antemano para no perder el tiempo en divagaciones. Por lo demás, el profesor transmite bien lo que trata de enseñar. Espero disfrutar el curso de iOS 11 de la misma manera o mejor.

S
Sebastián24 December 2017

Está muy bien explicado el curso y es bastante detallado; pero me parece que se podría reorganizar un poco el orden de los temas.

J
Jonathan13 December 2017

hasta ahora el curso va muy bien, todo bien explicado y o muy difícil de entender, estoy agosto hasta el momento


Coupons

DateDiscountStatus
7/9/202194% OFFValid

883176

Udemy ID

6/20/2016

Course created date

11/1/2019

Course Indexed date
Bot
Course Submitted by