{"id":453,"date":"2016-02-01T01:00:56","date_gmt":"2016-02-01T00:00:56","guid":{"rendered":"http:\/\/www.programaraciegas.net\/?p=453"},"modified":"2016-02-06T20:54:56","modified_gmt":"2016-02-06T19:54:56","slug":"primeros-pasos-con-swift","status":"publish","type":"post","link":"https:\/\/programaraciegas.net\/?p=453","title":{"rendered":"Primeros pasos con Swift"},"content":{"rendered":"<p>Swift es un nuevo lenguaje de programaci\u00f3n creado por <a href=\"http:\/\/www.apple.com\">Apple<\/a> buscando atraer a nuevos desarrolladores. La propia compa\u00f1\u00eda lo describe en su <a href=http:\/\/www.apple.com\/es\/swift\/\">p\u00e1gina oficial de Swift<\/a> como un lenguaje potente y sencillo de aprender.<\/p>\n<p>Realmente Swift, en comparaci\u00f3n con otros lenguajes, tiene una curva de aprendizaje menor y las herramientas proporcionadas por Apple para desarrollar con \u00e9l lo hacen un lenguaje muy apropiado como primera opci\u00f3n para aprender a programar.<\/p>\n<p>Recientemente Apple ha decidido donar su lenguaje a la comunidad de c\u00f3digo abierto lo que permitir\u00e1 a Swift estar presente en otras plataformas por lo que desarrollar una aplicaci\u00f3n para iOS, OSX, Linux y otras plataformas ser\u00e1 algo habitual en Swift.<\/p>\n<h2>Programando en Swift<\/h2>\n<p>Para programar en un lenguaje de programaci\u00f3n lo primero que necesitamos son herramientas de desarrollo compatibles con ese lenguaje. Si somos usuarios del sistema operativo MacOS X s\u00f3lo debemos ir a la aplicaci\u00f3n de la <strong>Mac AppStore<\/strong> y descargar el entorno de desarrollo de Apple m\u00e1s conocido como <a href=\"https:\/\/itunes.apple.com\/es\/app\/xcode\/id497799835?mt=12\">xCode<\/a>.<\/p>\n<p>xCode, como otras aplicaciones espec\u00edficas para una profesi\u00f3n, no es una herramienta sencilla de comprender con un primer vistazo pero tampoco es una tarea imposible. Iremos conociendo poco a poco esta herramienta junto con el aprendizaje de Swift en una serie de art\u00edculos publicados en este blog.<\/p>\n<p>Para programar en otra plataforma distinta a MacOS X hay varias alternativas proporcionadas por la <a href=\"http:\/\/www.swift.org\">comunidad de c\u00f3digo abierto de Swift<\/a> los cuales trabajan en un compilador para varias plataformas. Actualmente el compilador funciona para el sistema operativo Linux.<\/p>\n<p>Otra alternativa para ir practicando con Swift mientras aprendemos es utilizar una herramienta online creada por IBM para este objetivo. Esta herramienta es conocida como <a href=\"http:\/\/swiftlang.ng.bluemix.net\/?cm_mmc=developerWorks-_-dWdevcenter-_-swift-_-lp#\/repl\">IBM Swift Sandbox<\/a> y nos ofrece la posibilidad de crear y ejecutar un <em>Playground de Swift<\/em> a trav\u00e9s de nuestro navegador web. Esta herramienta web, aunque recientemente ha solucionado algunos problemas de compatibilidad con dispositivos m\u00f3viles para poder programar en cualquier momento desde cualquier lugar, presenta algunas barreras de accesibilidad relacionadas con el uso de esta herramienta por parte de usuarios de productos de apoyo por lo que se recomienda utilizar en su lugar xCode o el compilador de Swift para Linux. Esperemos que pronto est\u00e9 disponible este compilador para otros sistemas operativos.<\/p>\n<h3>\u00bfQu\u00e9 es un Playground de Swift?<\/h3>\n<p>Con la creaci\u00f3n de Swift Apple tambi\u00e9n desarroll\u00f3 nuevas herramientas y conceptos que ayuden a los desarrolladores a realizar su trabajo con mayor efectividad. Una de sus creaciones es el <em>Playground de Swift<\/em>. Un Playground de Swift es un mini proyecto de aplicaci\u00f3n que nos permite probar de forma r\u00e1pida y controlada partes de c\u00f3digo antes de que decidamos introducir ese nuevo c\u00f3digo en nuestro proyecto de trabajo. Esto permite probar algoritmos y funciones de una forma c\u00f3moda, segura y, adem\u00e1s, Apple ha incorporado herramientas de monitorizaci\u00f3n en los Playgrounds para obtener el rendimiento de los algoritmos ejecutados as\u00ed como permitir hacer una depuraci\u00f3n m\u00e1s intensa de nuestro c\u00f3digo.<\/p>\n<h2>Nuestro primer programa en Swift<\/h2>\n<p>Supongamos que vamos a utilizar xCode para crear nuestro primer programa en Swift. Al abrir xCode aparecer\u00e1 una ventana de bienvenida. En ella habr\u00e1 diversos botones, entre ellos encontramos uno que nos permite empezar con un Playground de Swift de forma r\u00e1pida, es el bot\u00f3n con el t\u00edtulo <em lang='en'>Get started with a playground<\/em>. Una vez pulsado nos pedir\u00e1 que demos un nombre a nuestro fichero de Playground y seleccionar una de las plataformas para nuestro Playground: iOS, OSX o TVOS. Tras esto se nos consultar\u00e1 d\u00f3nde guardar el fichero de nuestro Playground. Con esto xCode ya puede crear el entorno de desarrollo para que empecemos a jugar con nuestro Playground de Swift.<\/p>\n<p>xCode presenta en su interfaz un area de men\u00fa con una barra de herramientas con las principales opciones de ejecuci\u00f3n, depuraci\u00f3n y visualizaci\u00f3n, y un area de trabajo. Los usuarios de VoiceOver pueden identificar estas zonas f\u00e1cilmente si utilizan el gesto de <strong>dejar de interactuar con el item<\/strong> varias veces (<em>VO+May\u00fasculas+flecha arriba<\/em>). Explorando la ventana desde arriba a la izquierda siguiendo la exploraci\u00f3n hacia la derecha encontrar\u00e1 la barra de herramientas, identificada como <em>Toolbar<\/em>, una zona para controlar las pesta\u00f1as abiertas en xcode y un area de trabajo. Este area de trabajo es identificada por VoiceOver con el t\u00edtulo de ruta de nuestro proyecto, ser\u00eda algo parecido a <em>MyPlayground.playground split group<\/em>. Interactuando con el area de trabajo encontraremos varios subcontenedores:<br \/>\nel editor de c\u00f3digo, la barra de debug, la zona de debug y varias zonas relacionadas con el dise\u00f1o visual de la interfaz. Esta zona puede que contenga todos, algunos o ningunos de estos subcontenedores ya que podemos modificar la visualizaci\u00f3n de xCode en las opciones del men\u00fa <em lang=\"en\">View<\/em> de la barra de men\u00fa de xCode. Por ahora s\u00f3lo nos interesa el subcontenedor donde se encuentra el editor de c\u00f3digo, VoiceOver lo identificar\u00e1 con el nombre de nuestro fichero en edici\u00f3n; la barra de debug y el panel de debug o depuraci\u00f3n, dentro de este panel encontraremos la opci\u00f3n de ejecuci\u00f3n para nuestro Playground.<\/p>\n<p>En el editor de c\u00f3digo encontramos que ya hay escrito un c\u00f3digo de ejemplo:<\/p>\n<p><code><br \/>\n\/\/: Playground - noun: a place where people can play<br \/>\nimport Cocoa<br \/>\nvar str = \"Hello, playground\"<br \/>\n<\/code><\/p>\n<p>Prueba a borrar todo ese c\u00f3digo, escribir el siguiente c\u00f3digo y pulsar el bot\u00f3n <em lang=\"en\">Execute<\/em> que hay en la barra de debu:<\/p>\n<p><code><br \/>\nprint(\"Hola mundo!\")<br \/>\n<\/code><\/p>\n<p>Tras ejecutar el c\u00f3digo veremos que el texto <strong>Hola mundo!<\/strong> aparece en el area de depuraci\u00f3n. \u00a1Enhorabuena, has creado tu primer programa en Swift!<\/p>\n<p>Puede que s\u00f3lo encuentres la barra de debug, identificada por VoiceOver como <em lang=\"en\">debug bar group<\/em> y no encuentres el panel de debug, identificado por voiceOver como <em lang=\"en\">debug group<\/em>. Esto puede suceder porque este panel de depuraci\u00f3n se puede ocultar. Para hacer que se vea podemos entrar en la barra de debug y pulsar el bot\u00f3n <em lang=\"en\">show debug area<\/em> o usar la opci\u00f3n de la barra de men\u00fa de xCode en el men\u00fa <em>View<\/em> o el atajo de teclado ()<em>Comando+May\u00fasculas+Y<\/em>).<\/p>\n<h2>Un primer paso de otros muchos<\/h2>\n<p>Pensar\u00e9is que este programa no vale para nada pero si hab\u00e9is seguido las instrucciones hasta aqu\u00ed se supone que hab\u00e9is adquirido los primeros conocimientos para comenzar a aprender Swift ya que ahora sab\u00e9is lo siguiente:<\/p>\n<ul>\n<li>Saber escribir c\u00f3digo y ejecutar c\u00f3digo en un Playground<\/li>\n<li>Usar la funci\u00f3n <strong>print()<\/strong> que muestra un texto por pantalla<\/li>\n<\/ul>\n<p>En futuros art\u00edculos iremos aprendiendo m\u00e1s cosas sobre este lenguaje de programaci\u00f3n.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Swift es un nuevo lenguaje de programaci\u00f3n creado por Apple buscando atraer a nuevos desarrolladores. La propia compa\u00f1\u00eda lo describe en su<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,258],"tags":[95,87,259,249,199],"class_list":["post-453","post","type-post","status-publish","format-standard","hentry","category-programacion","category-swift","tag-osx","tag-programacion-2","tag-swift","tag-voiceover","tag-xcode"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/posts\/453","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=453"}],"version-history":[{"count":0,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/posts\/453\/revisions"}],"wp:attachment":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=453"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=453"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=453"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}