Home » Cursos » Curso de Swift, Introducción. Bienvenidos al curso e indicaciones básicas
Curso de Swift, Introducción

Curso de Swift, Introducción. Bienvenidos al curso e indicaciones básicas

Swift, varías son las posibles traducciones al español: ligero, rápido, preparado… Una palabra que condensa todos estos significados de manera intrínseca y que podemos entender por qué ha sido el nombre escogido por Apple para su nuevo lenguaje.

El 2 de junio de 2014 será recordado históricamente como el momento en que Apple, tras años de trabajo, presentó al mundo un nuevo lenguaje de programación que ellos mismos definían como lo mejor de C y Objective-C, pero sin las restricciones del C.

Moderno, seguro y potente

Swift es un lenguaje construido en el concepto de lenguaje moderno, y como tal, su sintaxis es poco sintáctica (es más difícil de leer que un lenguaje más explícito) y está construido sobre la base de una estructura segura. Además, en contra de la mayoría de lenguajes de tipo script, del que hereda gran parte de sus cualidades, Swift está más cerca de la CPU que el propio Objective-C, por lo que todo lo que se programe en este nuevo lenguaje, irá mejor y más fluido. De ahí el término: potente.

Ya hemos hablado sobre cómo es Swift en un artículo e incluso de si merece la pena o no aprenderlo. Podéis dar una vuelta por applecoding.com y leer sobre él, ya que empezamos a hablar del mismo casi desde su lanzamiento.

Lo que está claro es que su llegada no ha dejado indiferente a la comunidad de desarrolladores, y todos en mayor o menor medida han empezado a interesarte por él. Desde los que se acercan con curiosidad, los que aun quieren darse algo más de tiempo para mirarlo (al menos hasta que salga la versión final de iOS 8 y Yosemite) o gente como nosotros en AppleCoding que hemos devorado los libros oficiales, las charlas de Apple en la WWDC al respecto y hemos trabajado y creado proyectos completos en menos de un mes de vida que tiene el lenguaje.

Swift, no disponible hasta otoño

Podemos probar Swift, trabajar con él, aprenderlo, pero no podremos publicar nada hecho con el mismo hasta la llegada de iOS 8 en otoño. De hecho, el compilador está en fase beta y es normal encontrar fallos en el mismo.

Actualmente solo puede trabajarse con el lenguaje desde la versión beta de Xcode 6. Y como ya sabéis muchos, Apple hace firmar un NDA (Acuerdo de No Divulgación o Non-Disclosure Agreement) que impide hacer pública ninguna información al respecto a todo lo que está actualmente en beta.

Entonces, ¿qué pasa con Swift? Pasa que no está incluido en este acuerdo de manera explícita y la propia Apple ha publicado de manera gratuita y libre para todo el mundo en el App Store, una serie de libros sobre el lenguaje que permiten aprenderlo, y que podéis encontrar en nuestra sección de Recursos de Programación de la web.

Por el contrario, Xcode 6 Beta sí está dentro de este acuerdo, por lo que no podremos mostrar captura alguna del entorno, aunque sí podemos dar instrucciones de cómo se trabaja. Como todo lenguaje, no es necesario que dispongáis de Xcode pero es recomendable si queréis ir más allá.

¿Cómo conseguir Xcode 6 Beta? Pues si sois desarrolladores registrados del programa oficial de Apple para OS X o iOS, lo podéis descargar desde el portal Apple Developer. No es necesario que tengáis cuenta de pago, pues Xcode 6 Beta es gratuito para cualquier desarrollador, con solo registrarse en la web oficial y funciona en OS X Mavericks o superior.

Swift, a partir de iOS 7 y OS X Mavericks

Habéis leído bien. Swift funciona para realizar apps que se ejecuten en las actuales versiones de los sistemas operativos de Apple. No necesitamos instalar la versión beta de ninguno de los dos si queremos probar lo que hagamos. Los requisitos para programar siempre serán esos: iOS 7 o superior y OS X Mavericks o superior.

Estructura del curso

El curso estará dividido en lecciones que irán desglosando los conceptos básicos de programación y notación en progresión de dificultad o complejidad. Las primeras lecciones contarán con ejemplos de código en sus cuadros específicos y utilizarán comentarios que se anteceden con dos barras de división consecutivas // usando la misma sintaxis que utiliza el lenguaje para estos, aunque en nuestro caso, dichos comentarios estarán siempre en cursiva.

En lecciones más avanzadas, se construirán programas completos cuyo código fuente podréis descargar libremente desde nuestra cuenta oficial en el repositorio público GitHub y que contará con todo el proyecto en Xcode para que podáis verlo, probarlo y modificarlo para aprender cómo funciona el lenguaje.

Cuando nos vayamos a referir a una palabra reservada o instrucción del lenguaje, esta palabra se marcará en destacado, tal como podéis ver en la palabra marcada.

Cómo practicar, usando playground

El método ideal para practicar el curso es con Xcode 6 Beta. En la pantalla inicial del mismo, podéis ver que la primera opción bajo “Welcome to Xcode” reza “Get started with playground”. Si pulsamos en esta opción nos pedirá un nombre de archivo para crear el entorno de trabajo y luego abrirá una ventana con el siguiente código:

La primera instrucción es un comentario, la segunda importa todo el entorno de Cocoa y sus clases para poder trabajar y el tercero crea una variable con una cadena. Si nos fijamos a la derecha, en una barra lateral que ocupa todo ese lateral, veremos que indica “Hello, playground”. Esto es porque playground permite que cuando pongamos una instrucción, en esta barra a la derecha, podamos ver inmediatamente qué ha pasado al poner esa instrucción.

Es importante notar que las instrucciones en Swift no usan ningún símbolo de fin de linea. No hay que usar el punto y coma ; como en Objective-C, sino que el simple salto de línea indica que hemos pasado a una nueva.

Si durante el curso hay alguna información importante que debéis recordar, se usarán cajas como la que tenéis arriba con una de las primeras y más importantes indicaciones. Probad a escribir debajo de la última instrucción del playground que habéis creado lo siguiente:

println nos permite tener una salida de terminal cuando ejecutamos un programa. Solo hay que poner una cadena entre paréntesis. Si queremos mezclar cadenas con parámetros, solo tenemos usar \() como parte de la cadena. Por ejemplo, si queremos poner un “And now ” antes de esa cadena escribiríamos:

Como puede verse, el parámetro forma parte de la misma cadena, pero al escribirlo ya podéis notar cómo el propio entorno detecta que es una variable y la pone en otro color.

Si no podéis ver la salida del terminal es fácil, situad el cursor junto a la barra lateral derecha donde dice “Hello, playground” y veréis que a su derecha aparece un pequeño icono de un ojo y uno blanco. Situad el cursor junto al blanco y aparecerá un +. Pulsadlo y se abrirá una pequeña ventana con la información del terminal donde podréis ver el resultado de las instrucciones println.

Comenzamos

Y con todo esto indicado, ya solo queda empezar el curso del que ya tenéis disponible la primera lección, que habla sobre variables, constantes, inferencia y colecciones. En él aprenderéis a definir los tipos de datos básicos, los complejos como las colecciones de array y diccionarios y cómo trabajar con ellos, así como lo que son las variables, las constantes y el uso de la inferencia.

Y si tenéis cualquier duda, problema o sugerencia, no dudéis en contactar con nosotros a través del formulario de contacto. Os atenderemos a la mayor brevedad y gracias por vuestra confianza. Comenzamos y good Apple coding.

Acerca de Julio César Fernández

Analista, consultor y periodista tecnológico, desarrollador, empresario, productor audiovisual, actor de doblaje e ingeniero de vídeo y audio.

Otras recomendaciones

Lecciones Prototipos (I): UITableView

Lecciones por prototipos (I): Vistas de tabla (UITableView)

Primera lección por prototipos, un nuevo e innovador contenido. A veces, lo normal es que nos perdamos sin terminar de entender qué es o cómo funcionan los componentes que forman parte de una app o un juego. Para este caso hemos creado las lecciones por prototipos. Una exploración básica de conceptos esenciales a través de prototipos en Playground que podemos probar con Swift Playgrounds en el iPad o con Xcode 8. En esta primera lección abordamos las UITableView (vistas de tabla). Un elemento esencial en la mayoría de apps de iOS que muchas veces no es entendido desde su base y por lo tanto, provoca un mal uso de las mismas.

  • Pingback: Xcode 6 Beta, disponible para todos gratuitamente | AppleCoding()

  • Hola Excelente articulo !!

    Entonces comentas que para poder hacer un video-tutorial sobre swift entraría todo acerca del lenguaje pero sin incluir nada que revele al entorno xcode 6??

    Saludos

    • Julio César Fernández

      El lenguaje no entra dentro del contrato de no divulgación, pero efectivamente Xcode 6 sí, por lo que no puede mostrarse nada del mismo ni capturas, salvo aquellas que Apple ya ha publicado previamente como parte de su marketing.

      Un saludo y gracias por tu opinión del artículo

  • Manuel Bendala

    Muchas gracias por el tutorial. Como curiosidad, ‘swift’ es el pájaro que en español llamamos vencejo, de ahí la imagen.

    • Julio César Fernández

      Desconocía la traducción exacta como especie de pájaro. Gracias Manuel por la interesante curiosidad y por las gracias por el tutorial. Espero que te sea muy productivo y aquí estamos para lo que necesites.

  • Cat-Land

    Gracias por todo el trabajo que estais haciendo, yo siempre he querido aprender a programar y parto de 0, a ver si soy capaz de entrar en éste mundillo!

    Gracias de nuevo

    • Julio César Fernández

      Me alegro que te sirva de ayuda. No hemos querido olvidarnos del que entra por primera vez en este mundo de la programación. En el libro de Swift que estamos a punto de editar hay unos capítulos de introducción a la programación y a la orientación a objetos para que así cualquiera pueda entrar en el fascinante mundo del desarrollo siguiendo el libro y la web sin problema.

      Un saludo y gracias a ti por tus palabras. Ánimo porque hemos empezamos alguna vez.