Swift es ahora Open Source y estará en otras plataformas


Ya es oficial: el nuevo lenguaje de Apple, Swift, que sustituye al vetusto Objective-C, ya es Open Source y puede descargarse desde GitHub para aquellos que estén interesados en echarle un vistazo. Este movimiento de Apple puede tener futuras e insospechadas consecuencias.

swift-2.0-open-source

Como fue prometido en la pasada Keynote de la WWDC, Swift ha pasado a ser código abierto y eso significa que cualquier desarrollador, de cualquier plataforma, puede coger el código de compilador, herramientas y APIs y realizar las modificaciones pertinentes para hacer que funcione en otras plataformas distintas de las de la manzana. Así, será posible que pueda ser usado en Linux, pero obviamente, también en Windows y, (¿por qué no?) en Android. ¿Cuales pueden ser estas posibilidades y la posible estrategia de Apple en este sentido? Algunos pueden llevarse una sorpresa.

Swift es un nuevo lenguaje moderno, con sintaxis sencilla en general y relativamente fácil de aprender si vienes de otros lenguajes modernos como C#, Python o Ruby. Se ha convertido en un lenguaje tremendamente popular en un año, llegando a los 20 primeros puestos de la mayoría de las listas de lenguajes más usados en un tiempo récord. Pero obviamente, aparte de modernizar la programación en sus propias plataformas, Apple tiene más objetivos con Swift más allá de permitir programar más rápido y mejor a sus propios programadores. En opinión del que suscribe, su intención es dominar la programación de otros sistemas operativos y atraer programadores a sus plataformas ya establecidas.

Muchos programadores de entorno Linux llevaban meses esperando esto como agua de mayo. Para los que nos gusta el desarrollo de software, es una perita en dulce. La última versión 2.1 es ya lo suficientemente estable como para que haya dado el salto definitivo a otras plataformas y sea usable de una forma real en producción (muchas apps en la App Store ya están desarrolladas con Swift). Pero lo interesante es el giro de los acontecimientos que puede darse a varios niveles, especialmente en las estrategias comerciales y técnicas de Apple. Esto atraerá nuevos programadores a la plataforma de Apple (que deberán seguir pasando por caja para entrar en la App Store, claro, aunque con la posibilidad de Xcode 7 de permitir usar la app sin tener una licencia de programador, los desarrolladores de código abierto están frotándose las manos, ya que podrán desarrollar sin tener que publicar necesariamente en la tienda), y generará nuevas posibilidades, robando desarrollos a otras plataformas.

Swift

Pero también se podría decir que esto llevará a los programadores Apple a otras plataformas. Sí y no. Una cosa es que el sistema de desarrollo sea abierto y pueda traducirse en otras plataformas, y otra cosa diferente es que las apps para iOS puedan portarse sin más. Muchas cosas como las notificaciones, iCloud y muchos aspectos específicos de Apple que requieren licencia no se podrán usar. Lo que puede hacerse es usar las librerías básicas, pero las de iOS u OS X probablemente no. Los desarrolladores que trabajen con Apple seguirán haciendo sus apps con Apple, pero usarán su tecnología para trabajar en otras plataformas, y eso llevará la marca de la manzana a esos sitios extendiéndola de forma patente. Además, los desarrolladores siempre han podido trabajar con las mismas herramientas que cualquier otro entorno Unix/Linux, con lo que a efectos prácticos la cosa no ha cambiado mucho para ellos, sino más bien para los que no han trabajado con Apple hasta ahora.

El caso de Android y Java podría ser paradigmático: yo personalmente sufro a menudo este lenguaje que va generando en uno la sensación de hastío, dificultando una programación que debería ser mucho más eficiente. Swift puede solucionar eso, sustituyendo a Java como lenguaje de programación (Xamarin tiene mucha experiencia en ese sentido, trasladando C# a iOS y Android durante años), lo que muchísimos programadores agradeceríamos no sabéis cuanto. Google ha generado toda su estrategia de desarrollo del sistema alrededor de Java y aunque hace ya un tiempo que debería haberse actualizado a Go (que tiene ya unos cuantos años), el lenguaje de scripting co-desarrollado nada menos que por uno de los creadores de Unix, Ken Thompson, del que hablábamos hace poco en referencia a otro de los mitos de los primeros tiempos de la informática actual, Dennis Ritchie. Pero como es habitual en ellos, se están quedando atrás y eso abre una ventana a Apple para meterse hasta la cocina. Y del lado de Microsoft tenemos otra banda de juego: Microsoft puede aprovechar este movimiento de Apple para ganar compatibilidad con Windows 10 y por otro lado, Apple puede ser más atractivo para los desarrolladores Windows, y a su vez, hacer que los desarrolladores Apple tengan interés por usar Swift en Windows, lo que podría también llevar a que el imperio de software de Apple se extienda al sistema de las ventanas. Probablemente Microsoft salga ganando con este cambio (o no), pero Apple también.

En definitiva, tenemos nuevos escenarios que los usuarios de base tal vez no noten en algunos años, pero que los que nos dedicamos al desarrollo podemos llegar a notar y mucho, y eso se terminará traduciendo en nuevas aplicaciones que podrían, posiblemente, ser multiplataforma. Ya veremos como termina la cosa, pero de momento pinta bastante bien para los fans del developing.

Vía: The Verge

Anterior Samsung pagará a Apple 548 millones de dólares por infringimiento de patentes
Siguiente 14 apps gratis por tiempo limitado para iOS (5-diciembre-15)

Sin comentarios

Contestar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *