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

Aprende a hacer tus aplicaciones iOS

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

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

Aprende a hacer tus aplicaciones iOS

¡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. Swift

Los 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 curso

  • Como toda buena introducción comenzaremos por los ladrillos que nos permiten crear la casa: los tipos de datos más básicos

  • Una vez conocemos los ladrillos, tenemos que aprender qué podemos hacer con ellos, por medio de los operadores y las funciones

  • Para facilitar nuestras tomas de decisiones y repetición de tareas, conoceremos los elementos de control de flujo

  • Veremos que podemos crear nuestras propias piezas elaboradas para construir la casa por medio de clases, estructuras y enumerados

  • Nos adentraremos en temas como los protocolos, que nos permiten poner en contacto estos componentes sin que unos dependan de otros

  • Utilizaremos tipos especiales, llamados genéricos, para evitar la repetición de código

  • Analizaremos los problemas de gestión de memoria que surgen con ciertos paradigmas de programación, y su solución

  • Y por fin, como el mundo no es perfecto, veremos cómo tratar las condiciones inesperadas que pueden surgir en la ejecución del código

2. Apps con UIKit

Una 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 UIKit

  • Conoceremos los controles más utilizados para crear los interfaces gráficos

  • Veremos la forma de presentar múltiples pantallas dentro de la misma aplicación

  • Profundizaremos 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ámica

  • Al igual que podíamos crear nuestras propias piezas elaboradas, también veremos que podemos crear nuestros propios componentes gráficos elaborados

  • Aprenderemos que el tamaño de la pantalla no es el límite para mostrar la información de nuestra app

  • Y por fin, con todo lo aprendido, crearemos nuestra primera aplicación: una agenda de contactos

3. Apps con SwiftUI

Por 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 SwiftUI

  • Presentaremos un elemento muy potente para el desarrollo SwiftUI: la vista previa

  • Veremos componentes gráficos de SwiftUI que son contrapartidas de UIKit, así como las limitaciones de algunos de ellos

  • Dado 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 mismos

  • Comprenderemos las diferencia y similitudes a la hora de distribuir los componentes gráficos entre UIKit y SwiftUI

  • Entenderemos una de las piezas fundamentales de SwiftUI: el estado de las vistas, y la fuente de verdad

  • Por último, y para apreciar las diferencias de paradigma, realizaremos la misma aplicación de agenda de contactos, pero esta vez con interfaz gráfico SwiftUI

4. Apps adicionales

Todos 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 apps

Evidentemente, 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.