Swift para no-desarrolladores

Apple reservó el último tercio de la Keynote inaugural de la Conferencia de Desarrolladores para anunciar, entre otras muchas cosas, Swift, un nuevo lenguaje de programación. ¿Qué significa este paso por parte de Apple? ¿Es una mejora o un paso hacia el abismo?

¿Por qué se llama Swift y qué es ese pájaro en el icono?

La traducción de Swift como adjetivo es “rápido, pronto, ligero, repentino” mientras que usado como nombre hace referencia al vencejo.

El vencejo común o Apus apus, es un ave apodiforme de la familia de los apódidos, especialmente adaptada para el vuelo, con alas falciformes, cola corta de horquilla poco profunda, boca muy ancha y grande rematada con un pico pequeño, plumaje negruzco con una pequeña porción blanca o gris bajo el pico, patas muy cortas sin pulgar oponible y garras diminutas pero de presa extraordinariamente fuerte que le permiten “colgarse” en riscos elevados, paredes verticales y sitios elevados desde los que reemprende el vuelo, ya que si cae al suelo experimenta gran dificultad en remontar el vuelo por su especial morfología alar y cortas patas. [Wikipedia]

Si “no te suena” por este nombre, sí lo puedes reconocer porque es frecuente verlo en los cielos de toda España con su característica silueta (es un ave migratoria que se mueve entre Europa, África y Asia Central) en bandadas cazando insectos y volando a toda velocidad en grupos que parecen escuadrones de cazas TIE.

¿Por qué Apple lanza un lenguaje de programación? ¿No le basta con lo que hay en el mercado?

A Apple no le gusta depender de terceros. Hace muchos años sufrió un revolcón importante cuando dependía del mercado de la autoedición, Adobe y Quark decidieron lanzar sus aplicaciones para Windows y eso casi le cuesta la desaparición a la compañía. Desde entonces, y tras su profunda reconversión a una compañía orientada al mercado de consumo, en cuanto ha podido ha eliminado la dependencia de terceros para, tanto en hardware como en software, controlar de forma total sus productos. Ejemplos claros son los procesadores para sus dispositivos móviles, sus herramientas de desarrollo y ahora, un nuevo leguaje de programación.

Entonces, ya que es nuevo ¿Puedo aprender Swift y colocarme a la altura de otros programadores más experimentados?

No. Para utilizar Swift tienes que saber programar. Si te sientas a estudiar el manual publicado por Apple, y no tienes conocimientos de programación, encontrarás que sin esos conocimientos previos la curva de aprendizaje será tan larga y dura como si aprendieras otros lenguajes ya que careces de los fundamentos básicos de la programación.

¿Es un buen lenguaje de programación?

Cuando fue anunciado ayer el aplauso que recibió por parte de los desarrolladores asistentes a laKeynote fue el más grande, pero no por eso debe calificarse como “épico” o “apoteósico”. Realmente fue tibio. Los desarrolladores aplauden poco porque luego tienen que enfrentarse con la situación real y el “ya veremos” seguramente pasó por la mente de muchos.

Los primeros comentarios por parte de desarrolladores van desde la aceptación total a la negación más absoluta. Desde luego no ha dejado indiferente a nadie. Ahora Swift va a ser puesto bajo la lupa y en el análisis como herramienta productiva no se le va a dejar mucho margen de maniobra a Apple si la compañía de Cupertino no es consciente de que debe responder muy agilmente a la solución de problemas.

Bajo la experiencia de programadores profesionales con muchos años de código a sus espaldas, Swift requiere todavía de mucha madurez e incluso adapta formas de trabajo que consideran poco efectivas e incluso anacrónicas en programación, pero aún hay espacio para mejorar la herramienta en los próximos meses antes del lanzamiento oficial de OS X 10.10 Yosemite e iOS 8 y a lo largo de los siguientes años. Y es muy posible que muchas de las aplicaciones nativas de ambos sistemas estén ya “fabricadas” en Swift.

Lo que sí que hay que aceptar es que para seguir en el ecosistema de Apple, Swift va a ser un requerimiento para los próximos años. Apple irá deprecando en el próximo lustro a C y Objetive C desplazándolo por su propio lenguaje de programación, que no se adaptará a un uso de propósito general, sino a sus propios dispositivos de hardware con sus sensores, procesadores, GPUs, APIs y demás.

¿Pero cuales son las ventajas reales de Swift para los programadores?

Lo que Apple ha intentado es escoger lo mejor de diferentes lenguajes de programación para incluirlo en Swift y añadirle una opción que permite ver el resultado de la programación en tiempo real. Esto es interesante porque evita la compilación para ver el resultado lo que sobre todo agiliza el desarrollo en las fases de concepto y evaluación del proyecto para ir “matando” problemas estructurales de uso y funcionamiento de una aplicación.

¿Y para los usuarios finales?

Supuestamente, más y mejores aplicaciones construidas de forma más rápida y con un mayor rendimiento, aunque a nivel de consumo, es mucho más importante cómo y de qué forma se conectan esas aplicaciones a las nuevas APIs y añaden mejoras y funcionalidades que en sí el propio código con el que están creadas las aplicaciones.

0 0 votos
Article Rating
Subscribe
Notify of
11 Comments
Oldest
Newest Most Voted
Opiniones Inline
Ver todos los comentarios
Mandibul
Mandibul
9 years ago

“cola corta de horquilla poco profunda, boca muy ancha y grande rematada con un pico pequeño, plumaje negruzco con una pequeña porción blanca o gris bajo el pico, patas muy cortas sin pulgar oponible y garras diminutas pero de presa”

Salvo matices, nunca me había encontrado tan bien definido a mí mismo.

fjmp
fjmp
9 years ago

Ese “Apple irá deprecando” hace daño en los ojos… en castellano significa “rogar”… le quita el sentido a la frase.

ezmac
ezmac
9 years ago

Deprecado se acerca es abandonar o discontinuar, cancelar soporte.

No se la manía que tenés muchos de utilizar barbarismos cuando el castellano, y en otras lenguas también pasa, ya que tenemos el suficiente léxico para no tener que hacerlo.

Un ejemplo muy claro es roaming que privilegian a itineraria. Claro que en las clases de latín hacían pellas.

akumowolf
akumowolf
9 years ago

No creo que alguien dijese en la presentación que era un lenguaje para no programadores, o no lo entendí así.

Un lenguaje por sencillo que parezca, requiere unos fundamentos de programación .

Lo que Apple hace es lo mismo que otros hicieron en su momento como Microsoft, últimamente Facebook, o Google, o ellos mismos con WebObjects y otros menos famosos, en definitiva un lenguaje que se adapte mejor a su ecosistema.
Me parece genial, y además que elimine cantidad de código redundante a la hora de programar.
Este lenguaje no ha salido del desarrollo de hace un año, seguramente es el que han estado utilizando ellos hace tiempo, y puliéndolo.
De momento veo más a favor que en contra.

mikeunimac
mikeunimac
9 years ago

Sin ser buen conocedor, tomad con una pizca de sal esta primera impresión:

Lo he estado hojeando y me parece un gran paso adelante en el sentido de que simplifica mucho el lenguaje. Es más flexible a la hora de definir variables acercándose a la sencillez de Python. Por otro lado utiliza lo que creo que se llama notación de punto o un nombre similar. Quiero decir que tal como es en Xojo o similares como Visual Basic, y creo que .Net podrías por ejemplo escribir algo así como: textbox.text o textbox.number o textbox.visible
Me parece muy legible el código escrito con swift.
Las condicionales son clarísimas, los bucles también.
Me parece un código muy fácil de mantener por su alta legibilidad.
Y claro, os podeis imaginar que vengo de la programación procedural y por ello swift me parece mucho más legible que Objective-C.

mangrar
mangrar
9 years ago

Pues yo he estado echandole un vistazo al lenguaje y me parece bien, han implementado muchas caracteristicas de los lenguajes mas modernos. Han copiado cosas de python e incluso de Java (los genericos, la sintaxis es identica), tampoco han inventado nada.

A mi me jode en parte, pues estaba aprendiendo Objective-C y me gustaba, pues yo empece a programar en C y aunque soy programador Java, en parte echo de menos este lenguaje. Veo swift mucho mas legible, tanto como lenguajes mas modernos como java o python.

Marcos Legido Hernández
Marcos Legido Hernández
9 years ago

Lo he estado mirando y me ha gustado lo que he visto. Mezcla de forma bastante acertada a mi entender varios lenguajes, incluso he visto reminiscencias de Perl, lo que me agrada bastante, y desde luego la sintaxis es cristalina. Con los años que llevo a las espaldas, me ha sorprendido muy agradablemente y estoy esperando a poder usarlo en las apps nuevas. Y no estoy de acuerdo con que esté verde: creo que de hecho es bastante evolucionado, está bastante pulido. Tengo ganas de verlo en acción.

joanartur
joanartur
9 years ago

Como siempre un artículo muy interesante Carlos !

Por cierto, una pregunta para los “faq-makeros” más hackers:

Si quisiera programar sólo con Swift, qué lenguaje de programación necesitaría aprender como pre-requisito ?

Muchas gracias compañer@s 😉

Javier Arántegui
Javier Arántegui
9 years ago

#8 Yo he empezado con Python. Es sencillo, se pueden hacer cosas útiles en seguida y hay un montón de documentación disponible.

Una buen manera de empezar, de nuevo por donde yo he empezado, es cursando este MOOC: https://www.coursera.org/course/interactivepython

El curso es gratuito y no supone ningún conocimiento inicial en programación. Además está impartido por profesorado de una buena universidad. La próxima edición empieza en septiembre. Eso sí, el curso es en inglés.

jocoloso
9 years ago

#9 Coursera rules!

joanartur
joanartur
9 years ago

#9

Eskerrik asko Javier !

Le daré una ojeada a http://www.coursera.org a ver si me aclaro con el (Monty)Python 😉

11
0
Me encantaría saber tu opinión, por favor, deja un comentariox
()
x