A | B | C | D | E | F | G | H | CH | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
Paradigm | Multi-paradigm: protocol-oriented, object-oriented, functional, imperative, block structured, declarative, concurrent |
---|---|
Designed by | Chris Lattner, Doug Gregor, John McCall, Ted Kremenek, Joe Groff, and Apple Inc.[1] |
Developer | Apple Inc. and open-source contributors |
First appeared | June 2, 2014[2] |
Stable release | 5.10[3]
/ 5 March 2024 |
Preview release | 5.9
|
Typing discipline | Static, strong, inferred |
Memory management | Automatic Reference Counting |
OS | Apple's operating systems (Darwin, iOS, iPadOS, macOS, tvOS, watchOS), Linux, Windows, Android, z/OS |
License | Apache License 2.0 (Swift 2.2 and later) Proprietary (up to Swift 2.2)[4][5] |
Filename extensions | .swift, .SWIFT |
Website | |
Influenced by | |
Objective-C,[6] Rust, Haskell, Ruby, Python, C#, CLU,[7] D[8] | |
Influenced | |
Rust,[9] V (Vlang)[10] |
Swift is a high-level general-purpose, multi-paradigm, compiled programming language created by Chris Lattner in 2010 for Apple Inc. and maintained by the open-source community. Swift compiles to machine code, as it is an LLVM-based compiler. Swift was first released in June 2014,[11] and the Swift toolchain has shipped in Xcode since version 6, released in 2014.
Apple intended Swift to support many core concepts associated with Objective-C, notably dynamic dispatch, widespread late binding, extensible programming, and similar features, but in a "safer" way, making it easier to catch software bugs; Swift has features addressing some common programming errors like null pointer dereferencing and provides syntactic sugar to help avoid the pyramid of doom. Swift supports the concept of protocol extensibility, an extensibility system that can be applied to types, structs and classes, which Apple promotes as a real change in programming paradigms they term "protocol-oriented programming"[12] (similar to traits and type classes).[13]
Swift was introduced at Apple's 2014 Worldwide Developers Conference (WWDC).[14] It underwent an upgrade to version 1.2 during 2014 and a major upgrade to Swift 2 at WWDC 2015. It was initially a proprietary language, but version 2.2 was made open-source software under the Apache License 2.0 on December 3, 2015, for Apple's platforms and Linux.[15][16]
Through version 3.0 the syntax of Swift went through significant evolution, with the core team making source stability a focus in later versions.[17][18] In the first quarter of 2018 Swift surpassed Objective-C in measured popularity.[19]
Swift 4.0, released in 2017, introduced several changes to some built-in classes and structures. Code written with previous versions of Swift can be updated using the migration functionality built into Xcode. Swift 5, released in March 2019, introduced a stable binary interface on Apple platforms, allowing the Swift runtime to be incorporated into Apple operating systems. It is source compatible with Swift 4.[20]
Swift 5.1 was officially released in September 2019. Swift 5.1 builds on the previous version of Swift 5 by extending the stable features of the language to compile-time with the introduction of module stability. The introduction of module stability makes it possible to create and share binary frameworks that will work with future releases of Swift.[21]
Swift 5.5, officially announced by Apple at the 2021 WWDC, significantly expands language support for concurrency and asynchronous code, notably introducing a unique version of the actor model.[22]
Swift 5.9, was released in September 2023 and includes a macro system, generic parameter packs, and ownership features like the new consume
operator.[23]
The current version, Swift 5.10, was released in March 2024. This version improves the language's concurrency model, allowing for full data isolation to prevent data races. It is also the last release before Swift 6.[24] Version 5.10 is currently available for macOS, Windows and, in experimental use, for Linux.[25]
History
Development of Swift started in July 2010 by Chris Lattner, with the eventual collaboration of many other programmers at Apple. Swift was motivated by the need for a replacement for Apple's earlier programming language Objective-C, which had been largely unchanged since the early 1980s and lacked modern language features. Swift took language ideas "from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list".[7] On June 2, 2014, the Apple Worldwide Developers Conference (WWDC) application became the first publicly released app written with Swift.[26] A beta version of the programming language was released to registered Apple developers at the conference, but the company did not promise that the final version of Swift would be source code compatible with the test version. Apple planned to make source code converters available if needed for the full release.[26]
The Swift Programming Language, a free 500-page manual, was also released at WWDC, and is available on the Apple Books Store and the official website.[27]
Swift reached the 1.0 milestone on September 9, 2014, with the Gold Master of Xcode 6.0 for iOS.[28] Swift 1.1 was released on October 22, 2014, alongside the launch of Xcode 6.1.[29] Swift 1.2 was released on April 8, 2015, along with Xcode 6.3.[30] Swift 2.0 was announced at WWDC 2015, and was made available for publishing apps in the App Store on September 21, 2015.[31] Swift 3.0 was released on September 13, 2016.[32] Swift 4.0 was released on September 19, 2017.[33] Swift 4.1 was released on March 29, 2018.[34]
Swift won first place for Most Loved Programming Language in the Stack Overflow Developer Survey 2015[35] and second place in 2016.[36]
On December 3, 2015, the Swift language, supporting libraries, debugger, and package manager were open-sourced under the Apache 2.0 license with a Runtime Library Exception,[37] and Swift.org was created to host the project. The source code is hosted on GitHub, where it is easy for anyone to get the code, build it themselves, and even create pull requests to contribute code back to the project.
In December 2015, IBM announced its Swift Sandbox website, which allows developers to write Swift code in one pane and display output in another.[38][39][40] The Swift Sandbox was deprecated in January 2018.[41]
During the WWDC 2016, Apple announced an iPad exclusive app, named Swift Playgrounds, intended to teach people how to code in Swift. The app is presented in a 3D video game-like interface which provides feedback when lines of code are placed in a certain order and executed.[42][43][44]
In January 2017, Chris Lattner announced his departure from Apple for a new position with Tesla Motors, with the Swift project lead role going to team veteran Ted Kremenek.[45][46]
During WWDC 2019, Apple announced SwiftUI with Xcode 11, which provides a framework for declarative UI structure design across all Apple platforms.[47]
Official downloads for the Ubuntu distribution of Linux have been available since Swift 2.2, with more distros added since Swift 5.2.4, CentOS and Amazon Linux.[48] There is an unofficial SDK and native toolchain package for Android too.[49][50]
Platforms
The platforms Swift supports are Apple's operating systems (Darwin, iOS, iPadOS, macOS, tvOS, watchOS), Linux, Windows, and Android.[51][52]
A key aspect of Swift's design is its ability to interoperate with the huge body of existing Objective-C code developed for Apple products over the previous decades, such as Cocoa and the Cocoa Touch frameworks. On Apple platforms,[53] it links with the Objective-C runtime library, which allows C, Objective-C, C++ and Swift code to run within one program.[54]
Version history
Swift version |
Release date | macOS | Linux | Windows |
---|---|---|---|---|
1.0 | September 9, 2014 | Yes | No | No |
1.1 | October 22, 2014 | Yes | No | No |
1.2 | April 8, 2015 | Yes | No | No |
2.0 | September 21, 2015 | Yes | No | No |
2.1 | October 20, 2015 | Yes | No | No |
2.2 | March 21, 2016 | Yes | Yes | No |
2.2.1 | May 3, 2016 | Yes | Yes | No |
3.0 | September 13, 2016 | Yes | Yes | No |
3.0.1 | October 28, 2016 | Yes | Yes | No |
3.0.2 | December 13, 2016 | Yes | Yes | No |
3.1 | March 27, 2017 | Yes | Yes | No |
3.1.1 | April 21, 2017 | Yes | Yes | No |
4.0 | September 19, 2017 | Yes | Yes | No |
4.0.2 | November 1, 2017 | Yes | Yes | No |
4.0.3 | December 5, 2017 | Yes | Yes | No |
4.1 | March 29, 2018 | Yes | Yes | No |
4.1.1 | May 4, 2018 | No | Yes | No |
4.1.2 | May 31, 2018 | Yes | Yes | No |
4.1.3 | July 27, 2018 | No | Yes | No |
4.2 | September 17, 2018 | Yes | Yes | No |
4.2.1 | October 30, 2018 | Yes | Yes | No |
4.2.2 | February 4, 2019 | No | Yes | No |
4.2.3 | February 28, 2019 | No | Yes | No |
4.2.4 | March 29, 2019 | No | Yes | No |
5.0[55] | March 25, 2019 | Yes | Yes | No |
5.0.1 | April 18, 2019 | Yes | Yes | No |
5.0.2 | July 15, 2019 | No | Yes | No |
5.0.3 | August 30, 2019 | No | Yes | No |
5.1 | September 10, 2019 | Yes | Yes | No |
5.1.1 | October 11, 2019 | No | Yes | No |
5.1.2 | November 7, 2019 | Yes | Yes | No |
5.1.3 | December 13, 2019 | Yes | Yes | No |
5.1.4 | January 31, 2020 | No | Yes | No |
5.1.5 | March 9, 2020 | No | Yes | No |
5.2 | March 24, 2020 | Yes | Yes | No |
5.2.1 | March 30, 2020 | No | Yes | No |
5.2.2 | April 15, 2020 | Yes | Yes | No |
5.2.3 | April 29, 2020 | No | Yes | No |
5.2.4 | May 20, 2020 | Yes | Yes | No |
5.2.5 | August 5, 2020 | No | Yes | No |
5.3 | September 16, 2020 | Yes | Yes | Yes[56] |
5.3.1 | November 13, 2020 | Yes | Yes | Yes |
5.3.2 | December 15, 2020 | Yes | Yes | Yes |
5.3.3 | January 25, 2021 | No | Yes | Yes |
5.4[57] | April 26, 2021 | Yes | Yes | Yes |
5.4.1 | May 25, 2021 | No | Yes | Yes |
5.4.2 | June 28, 2021 | Yes | Yes | Yes |
5.4.3 | September 9, 2021 | No | Yes | Yes |
5.5 | September 20, 2021 | Yes | Yes | Yes |
5.5.1 | October 27, 2021 | Yes | Yes | Yes |
5.5.2 | December 14, 2021 | Yes | Yes | Yes |
5.5.3 | February 9, 2022 | No
Zdroj:https://en.wikipedia.org?pojem=Swift_(programming_language) Text je dostupný za podmienok Creative Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších podmienok. Podrobnejšie informácie nájdete na stránke Podmienky použitia.
Analytika
Antropológia Aplikované vedy Bibliometria Dejiny vedy Encyklopédie Filozofia vedy Forenzné vedy Humanitné vedy Knižničná veda Kryogenika Kryptológia Kulturológia Literárna veda Medzidisciplinárne oblasti Metódy kvantitatívnej analýzy Metavedy Metodika Text je dostupný za podmienok Creative
Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších
podmienok. www.astronomia.sk | www.biologia.sk | www.botanika.sk | www.dejiny.sk | www.economy.sk | www.elektrotechnika.sk | www.estetika.sk | www.farmakologia.sk | www.filozofia.sk | Fyzika | www.futurologia.sk | www.genetika.sk | www.chemia.sk | www.lingvistika.sk | www.politologia.sk | www.psychologia.sk | www.sexuologia.sk | www.sociologia.sk | www.veda.sk I www.zoologia.sk |