Debido al auge del desarrollo móvil, Swift es un lenguaje que gana terreno entre los profesionales, ya que esta tecnología fue creada de manera específica para macOS, iOS, tvOS, Linux, watchOS.
El lenguaje fue creado por Apple y está diseñado con el objetivo de trabajar con Cocoa Touch, los marcos de Cocoa y un amplio conjunto de códigos Objective-C que se han escrito para los productos de la manzana.
La historia de esta tecnología nos remonta a 2010, uno de los más jóvenes, con Chris Lattner quien comenzó a desarrollarlo con otros programadores de Apple. La idea de su funcionamiento fueron tomadas de Rust, Objective-C, Ruby, Haskell, C #, CLU, Python y una variedad de otros lenguajes de programación.
Swift fue presentado al mundo en el Apple Worldwide Developers Conference (WWDC) en 2014, en este evento se lanzó un prototipo del lenguaje y se puso a disposición de los desarrolladores registrados de Apple. La compañía, sin embargo, no prometió que la versión final será exactamente como el prototipo. Apple también planeó desarrollar algunos convertidores de código fuente para la versión final.
El 1.0 Swift se lanzó el 9 de septiembre de 2014. La compañía también presentó el Gold Master of Xcode 6.0 para iOS junto con este lanzamiento. Swift 1.1 se introdujo, junto con Xcode 6.1, el 22 de octubre de 2014. La gama de desarrollos continuó hasta la introducción de Swift 2.0 en WWDC 2015.
La compañía también introdujo un marco general para el desarrollo de Swift 3.0 en un blog en diciembre de 2015. La introducción de una versión intermitente se realizó antes de la 3.0. Swift 2.2, la versión intermitente, introdujo nuevas características y sintaxis en el idioma. Algunos componentes obsoletos también fueron eliminados del lenguaje con esta versión.
De acuerdo con la Encuesta de desarrolladores de Full Stack 2015, Swift ganó el primer puesto como el lenguaje de programación más querido. El lenguaje mantuvo el segundo lugar en la encuesta de 2016. Debido a la creciente funcionalidad y popularidad de Swift, se dice que Google llego a considerar Swift como el lenguaje de programación principal para Android, que es el sistema operativo de Google.
Ya que vimos parte de su historia, es momento de pasar a las ventajas que ofrece Swift para el desarrollo.
Conocido a menudo como «Objective-C, sin la C», Swift es en muchos aspectos superior a su predecesor. Según el comunicado de prensa oficial, «Swift combina el rendimiento y la eficiencia de los lenguajes compilados con la simplicidad y la interactividad de los lenguajes de secuencias de comandos populares».
Proceso de desarrollo rápido
Un lenguaje limpio y expresivo con una sintaxis y gramática simplificadas, Swift es más fácil de leer y escribir. Es muy conciso, lo que significa que se requiere menos código para realizar la misma tarea, en comparación con Objective-C. El Conteo Automático de Referencias (ARC, por sus siglas en inglés) realiza todo el trabajo de seguimiento y administración del uso de memoria de la aplicación, por lo que los desarrolladores no necesitan gastar tiempo y esfuerzo en hacerlo manualmente. En consecuencia, generalmente lleva menos tiempo crear aplicaciones de iOS con Swift.
- Es más fácil escalar el producto y el equipo
Además de un tiempo de desarrollo más rápido, obtienes un producto que está preparado para el futuro y se puede ampliar con nuevas características según sea necesario. Por lo tanto, los proyectos Swift suelen ser más fáciles de escalar. El hecho de que Apple tenga más probabilidades de admitir Swift que Objective-C también debería ser considerado seriamente para la inversión a largo plazo.
- Seguridad y rendimiento mejorados
Con un enfoque en el rendimiento y la velocidad, el lenguaje fue diseñado inicialmente para superar a su predecesor. Es decir, la versión inicial afirmó un aumento del 40% en el rendimiento, en comparación con Objective-C. A lo largo de los años, múltiples puntos de referencia y pruebas realizadas por desarrolladores individuales han demostrado eso. Además, hay muchas formas de optimizar el código Swift para un mejor rendimiento.
Otro de los puntos fuertes de Swift es su seguridad. Su fuerte sistema de codificación y manejo de errores previene bloqueos de código y en la producción. Por lo tanto, Swift tiene un ciclo de retroalimentación más corto, lo que le permite ver los errores en el código al instante y corregirlos sobre la marcha, lo que reduce en gran medida el tiempo y el esfuerzo necesarios para la corrección de errores y elimina los riesgos de implementar códigos de baja calidad.
- Disminución del uso de memoria
Cuando crea una aplicación, utiliza una gran cantidad de código de terceros: marcos o bibliotecas de código abierto reutilizables y, a menudo, compilados en el código de su aplicación. Estas bibliotecas pueden ser estáticas y dinámicas (o compartidas). Swift introdujo por primera vez bibliotecas dinámicas en iOS cuando se lanzó. Probablemente pueda adivinar que las bibliotecas estáticas están bloqueadas en el código en el momento en que se compiló, se convirtieron en parte de su archivo ejecutable, aumentando así su tamaño y tiempo de carga. Tampoco se pueden actualizar automáticamente ya que están atascados en la versión que compiló. Las bibliotecas dinámicas, por otro lado, existen fuera de su código y se cargan solo cuando es necesario. Las bibliotecas estáticas necesitan tener copias en todos los archivos de su programa, mientras que las dinámicas sólo necesitan una.
Desde la versión de lanzamiento 5.0, las bibliotecas estándar de Swift están integradas en cada versión de macOS, iOS, tvOS y watchOS. Eso significa que cualquier aplicación creada en esas plataformas será más pequeña, porque estas bibliotecas están incluidas. Con este avance, también se lanzó la interfaz binaria de aplicación estable (ABI, por sus siglas en inglés).
- Una gran comunidad de código abierto y capacidad de aprendizaje
Como vicepresidente senior de ingeniería de software de Apple, Craig Federighi, mencionó: «Vimos el código abierto como un elemento crítico para hacer que Swift alcance su potencial de ser el lenguaje principal para los próximos 20 años de programación en nuestra industria».
De hecho, con el fuerte apoyo corporativo de Apple e IBM, Swift se ha ganado rápidamente una de las comunidades de código abierto más activas y dinámicas.
Para un idioma tan joven, Swift tiene una gran cantidad de recursos para ayudar a los desarrolladores a acelerar la adopción. Además de libros electrónicos oficiales, hay toneladas de pautas comunitarias, podcasts, cursos en línea e incluso de la vida real, aplicaciones de terceros y, por supuesto, Swift Playgrounds, una experiencia de aprendizaje gamificada de Apple.