Lenguaje de programación Swift y apps iOS desde las bases

via Udemy

Go to Course: https://www.udemy.com/course/lenguaje-de-programacion-swift-y-apps-ios-desde-las-bases/

Overview

¡Bienvenidos a este curso para aprender a programar apps iOS en el lenguaje Swift!En este curso empezaremos desde lo más básico en programación Swift, hasta llegar a hacer nuestras propias aplicaciones iOS. Y, por supuesto, veremos cómo publicar las apps que desarrollemos en el App Store. Así que, si no tienes experiencia en programación, ¡no te preocupes!, este curso también es para ti. Y si ya tienes experiencia, también encontrarás en las lecciones avanzadas mucha información y formas de programar que tal vez desconocías.1. SwiftLos temas puramente Swift los realizaremos con los llamados playground, una forma eficaz de crear pruebas de concepto en Xcode. En estos apartados:Comenzaremos instalando Xcode, y viendo en qué consiste esta herramienta de desarrollo que nos acompañará durante todo el cursoComo toda buena introducción comenzaremos por los ladrillos que nos permiten crear la casa: los tipos de datos más básicosUna vez conocemos los ladrillos, tenemos que aprender qué podemos hacer con ellos, por medio de los operadores y las funcionesPara facilitar nuestras tomas de decisiones y repetición de tareas, conoceremos los elementos de control de flujoVeremos que podemos crear nuestras propias piezas elaboradas para construir la casa por medio de clases, estructuras y enumeradosNos adentraremos en temas como los protocolos, que nos permiten poner en contacto estos componentes sin que unos dependan de otrosUtilizaremos tipos especiales, llamados genéricos, para evitar la repetición de códigoAnalizaremos los problemas de gestión de memoria que surgen con ciertos paradigmas de programación, y su soluciónY por fin, como el mundo no es perfecto, veremos cómo tratar las condiciones inesperadas que pueden surgir en la ejecución del código2. Apps con UIKitUna vez conocido el lenguaje de programación, podemos pasar a crear apps iOS. Para poder desarrollar estas aplicaciones necesitaremos lo que se llama una librería o framework de interfaz gráfico. Actualmente, existen dos frameworks de Apple para desarrollar aplicaciones en iOS. Comenzaremos por el más antiguo de ellos, UIKit, y lo haremos creando los componentes tanto por código, como por medio del llamado Storyboard, que permite desarrollar estos interfaces de una forma más gráfica:Analizaremos cómo es una app básica UIKitConoceremos los controles más utilizados para crear los interfaces gráficosVeremos la forma de presentar múltiples pantallas dentro de la misma aplicaciónProfundizaremos en la forma de ubicar los componentes gráficos en el espacio disponible en la pantalla, y que esa distribución varíe de forma dinámicaAl igual que podíamos crear nuestras propias piezas elaboradas, también veremos que podemos crear nuestros propios componentes gráficos elaboradosAprenderemos que el tamaño de la pantalla no es el límite para mostrar la información de nuestra appY por fin, con todo lo aprendido, crearemos nuestra primera aplicación: una agenda de contactos3. Apps con SwiftUIPor supuesto, no nos olvidaremos de lo más moderno en cuanto a interfaces gráficos para iOS, y estudiaremos en profundidad en qué consiste SwiftUI, y cómo se crean los interfaces gráficos por medio de este nuevo framework:Al igual que con UIKit, analizaremos cómo es la app básica SwiftUIPresentaremos un elemento muy potente para el desarrollo SwiftUI: la vista previaVeremos componentes gráficos de SwiftUI que son contrapartidas de UIKit, así como las limitaciones de algunos de ellosDado que el paradigma de SwiftUI es diferente al de UIKit, aprenderemos a dar propiedades a los elementos gráficos por medio de modificadores, ya sean propios de SwiftUI, o creados por nosotros mismosComprenderemos las diferencia y similitudes a la hora de distribuir los componentes gráficos entre UIKit y SwiftUIEntenderemos una de las piezas fundamentales de SwiftUI: el estado de las vistas, y la fuente de verdadPor último, y para apreciar las diferencias de paradigma, realizaremos la misma aplicación de agenda de contactos, pero esta vez con interfaz gráfico SwiftUI4. Apps adicionalesTodos los conocimientos anteriores, y algunos más, nos servirán para crear dos apps adicionales.La primera app consistirá en una aplicación de meteorología cuyo interfaz gráfico se desarrollará en UIKit. Además de los conocimientos ya adquiridos, introduciremos cuestiones como comunicación con servidores remotos, uso de librerías de terceros desarrolladores en nuestras apps, así como su manejo por medio de los gestores de dependencias más utilizados: CocoaPods y Swift Packages Manager. También trataremos el tema de mantener información de la aplicación de una ejecución a otra, por medio del framework Core Data. Así mismo, aprovecharemos algunos errores que nos encontraremos (¿o los hemos hecho a propósito?) para aprender a corregir errores utilizando algo similar al método científico.La segunda app, mucho más ambiciosa, consistirá en una red social para compartir fotografías o imágenes, con interfaz gráfico SwiftUI. En este caso, necesitaremos elementos externos de apoyo para autenticar usuarios, almacenar información de los usuarios e imágenes de forma más o menos estructurada, y almacenar las fotografías en sí, que pueden considerarse almacenamiento masivo. Para ello, utilizaremos algunas de las herramientas Firebase de Google. Sin embargo, veremos cómo desarrollar la aplicación de forma que sea lo más independiente posible de la tecnología que utilizamos por debajo para estas tareas. De hecho, seremos capaces de hacer toda la aplicación sin conectarla a un servidor externo, y, posteriormente, realizar esa conexión. Esta aplicación se puede considerar como un proyecto "fin de carrera" del curso, en el que pondremos a prueba todos los conocimientos adquiridos, y alguno más.5. Publicación de appsEvidentemente, si creamos una app es para publicarla en el App Store y que la gente se la descargue a sus dispositivos. Como última parte del curso, veremos la forma en que se publican las apps, los pasos a dar, y las modificaciones que tal vez tengamos que hacer en la aplicación.¿Este curso es para mi?¡Por supuesto! Desde las primeras lecciones hasta las últimas los conceptos que iremos aprendiendo son cada vez de mayor complejidad, llegando a enfrentarnos a secciones enteras consideradas de dificultad avanzada.Si nunca te has acercado al mundo de la programación, aquí empezaras desde cero, y dado que los conceptos de programación se repiten con mucha frecuencia de un lenguaje de programación a otro, te permitirá sentar las bases, no sólo para aprender Swift, sino, potencialmente, otros lenguajes de programación.Si ya tienes un nivel avanzado, las primeras lecciones te resultarán muy sencillas, pero según progreses en el curso verás conceptos que no son muy tratados en general, y que son de mucha utilidad.

Skills

Reviews