Swift | ||
---|---|---|
Desarrollador(es) | ||
Apple https://swift.org/ | ||
Información general | ||
Extensiones comunes | .swift | |
Paradigma | Multiparadigma (Orientado a protocolos, objetos, funcional, programación imperativa) | |
Apareció en | 2 de junio de 2014[1] | |
Diseñado por | Chris Lattner, Doug Gregor, John McCall, Ted Kremenek, Joe Groff, and Apple Inc.[2] | |
Última versión estable | 5.9.2[3] (11 de diciembre de 2023) | |
Influido por | C#,[4] CLU,[5] D,[6] Haskell, Objective-C, Python, Rust, Ruby | |
Sistema operativo | macOS, iOS,iPadOS, watchOS, tvOS, GNU/Linux, FreeBSD, Windows | |
Licencia | Apache 2.0 | |
Swift es un lenguaje de programación multiparadigma creado por Apple enfocado en el desarrollo de aplicaciones para iOS y macOS. Fue presentado en la WWDC 2014[7] y está diseñado para integrarse con los Frameworks Cocoa y Cocoa Touch; puede usar cualquier biblioteca programada en Objective-C y llamar a funciones de C. También es posible desarrollar código en Swift compatible con Objective-C bajo ciertas condiciones. Swift tiene la intención de ser un lenguaje seguro, de desarrollo rápido y conciso. Usa el compilador LLVM incluido en Xcode 6. Fue presentado como un lenguaje propietario, pero en el año 2015, con la versión 2.2, pasó a ser de código abierto[8] con la Licencia Apache 2.0.
Tipos de datos
Swift es un lenguaje fuertemente tipado, aunque su declaración no siempre es necesaria gracias a su capacidad de inferir tipos. Los tipos de datos se dividen principalmente en dos grupos. Los Tipos de valor y los Tipos por referencia, se diferencian principalmente en como son asignados.
- Al asignar un Tipo de valor se guarda una copia de su contenido. Se recomienda su uso cuando se requiere copiar su información o se vaya a trabajar en múltiples hilos.
- Al asignar un Tipo por referencia se asigna una instancia compartida que es mutable aún si son usadas en constantes, es decir modificar una instancia se verá reflejado en todas las variables y constantes que la compartan. Se recomienda su uso cuando se requiera compartir datos mutables.[9]
Historia
Chris Lattne comenzó su desarrollo en el 2010, eventualmente obtuvo colaboración de otros programadores. Swift se benefició de la experiencia de muchos lenguajes tomando ideas de Objective-C, Haskell, Rust, Ruby, Python, C#, CLU entre otros.[10]
Ejemplo de código
let personas = ["Anna": 67, "Beto": 8, "Jack": 33, "Sam": 25]
for (nombre, edad) in personas {
print("\(nombre) tiene \(edad) años de edad.")
}
Véase también
Referencias
- ↑ «Swift Has Reached 1.0». Apple. 9 de septiembre de 2014. Consultado el 8 de marzo de 2015.
- ↑ U.S. patent no. 9329844
- ↑ https://swift.org/download/#releases
- ↑ Lattner, Chris (3 de junio de 2014). «Chris Lattner's Homepage». Chris Lattner. Consultado el 3 de junio de 2014. «The Swift language is the product of tireless effort from a team of language experts, documentation gurus, compiler optimization ninjas, and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course, it also greatly benefited from the experiences hard-won by many other languages in the field, drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.»
- ↑ Lattner, Chris (3 de junio de 2014). «Chris Lattner's Homepage». Chris Lattner. Consultado el 3 de junio de 2014. «I started work on the Swift Programming Language in July of 2010. I implemented much of the basic language structure, with only a few people knowing of its existence. A few other (amazing) people started contributing in earnest late in 2011, and it became a major focus for the Apple Developer Tools group in July 2013 […] drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.»
- ↑ «Building assert() in Swift, Part 2: __FILE__ and __LINE__». Consultado el 25 de septiembre de 2014.
- ↑ «Apple announces Swift, a new programming language for iOS».
- ↑ «El lenguaje de programación Swift es ahora de código abierto». 3 de diciembre de 2015. Consultado el 3 de diciembre de 2015.
- ↑ «Value and Reference Types».
- ↑ «Chris Lattner's Homepage».
Enlaces externos
- Entornos de desarrollo integrados
- MacOS
- Lenguajes de programación multiparadigma
- Lenguajes de programación orientada a objetos
- Lenguajes de programación imperativa
- Lenguajes funcionales
- Software de 2014
- Software de Apple Computer exclusivo para Mac OS
- Lenguajes de programación de sistemas
- Introducciones relacionadas a la ciencia de la computación de 2014