Rápido | |
---|---|
clase de idioma | multiparadigma (orientado a protocolos, orientado a objetos , funcional , imperativo ) |
Apareció en | 2014 |
Autor | Chris Latner [d] |
Desarrollador | Chris Lattner [d] yApple |
extensión de archivo | .swift |
Liberar |
|
Implementaciones principales | LLVM |
sido influenciado | Objective-C , C++ , Java [2] , Rust , Scala , Python , Ruby , Smalltalk , Groovy [3] , lenguaje D [4] |
Licencia | desde la versión 2.2 de código abierto ( Apache 2.0 con una excepción de biblioteca en tiempo de ejecución [5] [6] ) |
Sitio web | swift.org |
sistema operativo |
macOS , iOS , iPadOS , tvOS , watchOS , Linux , Microsoft Windows |
Archivos multimedia en Wikimedia Commons |
Swift es un lenguaje de programación compilado de propósito general multiparadigma de código abierto desarrollado y mantenido por Apple . La primera versión se introdujo en 2014.
Swift se usa más comúnmente en el desarrollo de aplicaciones para macOS , iOS , iPadOS , watchOS y tvOS , pero el lenguaje también está disponible para Windows y Linux . En las plataformas de Apple, el lenguaje funciona con los marcos Cocoa y Cocoa Touch , y es compatible con el código base de Apple escrito en el lenguaje Objective-C anterior . Swift fue concebido como un lenguaje más fácil de leer y más resistente a los errores del programador: una parte importante de los problemas que, en el caso de Objective-C, se encuentran solo durante la ejecución del programa y conducen a cuelgues , en Swift, en principio. , no permitirá compilar el código [7] .
El compilador de Swift se basa en LLVM , lo que significa que el mismo código se puede compilar para diferentes plataformas: x86 , ARM , WASM y otras. Un conjunto de herramientas (cadena de herramientas) para trabajar con el lenguaje está integrado en el entorno de desarrollo integrado Xcode 6 y superior . Swift puede usar el tiempo de ejecución de Objective-C , lo que hace posible usar ambos lenguajes (así como el lenguaje C ) dentro del mismo programa.
Craig Federighi , vicepresidente senior de desarrollo de software de Apple , durante el anuncio de este producto, dijo que el lenguaje de programación Swift se estableció en la plataforma NeXT ( NeXTSTEP OS se lanzó en 1989-1995 ), que se convirtió en la base para macOS moderno. y luego iOS [8] .
El desarrollo del lenguaje Swift actual fue iniciado en 2010 por Chris Lattner , jefe de herramientas de desarrollo de software de Apple y uno de los principales desarrolladores de LLVM. Swift tomó prestadas ideas de "Objective-C, Rust , Haskell , Ruby , Python , C# , CLU y tantos lenguajes más que es difícil enumerar" [9] . El nombre original del nuevo idioma era Shiny [10] .
El 2 de junio de 2014, en la conferencia WWDC , se presentó oficialmente Swift junto con una guía gratuita de 500 páginas para usar el idioma, disponible en el servicio iBook Store [11] .
El 8 de junio de 2015, Apple anunció el lanzamiento de una nueva versión de Swift 2.0, que recibió un mayor rendimiento, una nueva API de manejo de errores, mejoras en la sintaxis del idioma y una característica para verificar la disponibilidad de las funciones de Swift para el sistema operativo de destino [12] .
El 3 de diciembre de 2015, se lanzó una versión beta de Swift 3.0 con soporte para los sistemas operativos OS X , iOS y Linux y con la licencia abierta Apache 2.0 con una Excepción de biblioteca en tiempo de ejecución [13] [14] . La versión 3.0 no es compatible con versiones anteriores del idioma; a partir del entorno de desarrollo nativo de Xcode versión 9 sobre la versión de lenguaje Swift-2 y versiones anteriores no son compatibles.
A principios de abril de 2016, una fuente de medios anónima de Google informó que la empresa estaba considerando traducir el lenguaje Swift a un lenguaje de "primera clase" para la plataforma Android [15] . Ya se han presentado los prototipos del compilador Swift para Android [16] [17] [18] .
El 19 de septiembre de 2017, se lanzó Swift 4.0.
En septiembre de 2018 , junto con la nueva versión de iOS 12 , se lanzó una nueva versión estable del lenguaje Swift 4.2 y apareció la versión beta de Swift 5.0. La versión 5.0 finalmente anunció el trabajo estable de ABI con bibliotecas estándar (Swift Dynamic Library), soporte para expresiones regulares y una solución de primera clase para procesamiento paralelo de datos con modo de procesamiento asíncrono async/await [19] .
20 de septiembre de 2019 Swift 5.1 es el próximo lanzamiento importante de Swift, y su objetivo es finalmente hacer que ABI sea estable.
Cada seis meses, generalmente en marzo y septiembre, se publican importantes actualizaciones de idioma que agregan nuevas características o cambian las condiciones de trabajo anteriores.
La versión actual del idioma para mayo de 2022 es Swift 5.6.
Swift ha tomado mucho de Objective-C , sin embargo, no está definido por punteros, sino por los tipos de variables que maneja el compilador . Muchos lenguajes de secuencias de comandos funcionan con un principio similar. Al mismo tiempo, proporciona a los desarrolladores muchas funciones que antes estaban disponibles en C++ y Java , como convenciones de nomenclatura definibles, genéricos y sobrecarga de operadores .
Algunas de las funciones del lenguaje son más rápidas que en otros lenguajes de programación. Por ejemplo, clasificar objetos complejos es 3,9 veces más rápido que Python y casi 1,5 veces más rápido que Objective-C [20][21] .
El código escrito en Swift puede funcionar junto con el código escrito en los lenguajes de programación C y Objective-C dentro del mismo proyecto [2] .
Apple ha dividido el código Swift en varios repositorios abiertos.
lenguaje de programación c | |
---|---|
compiladores |
|
bibliotecas | |
Peculiaridades | |
algunos descendientes | |
C y otros lenguajes |
|
Categoría:Lenguaje de programación C |