27-05-2023
Класс языка: | |
---|---|
Появился в: |
2014 |
Основные реализации: | |
Испытал влияние: |
Objective-C, C++, Java[1], Rust, Scala, Ruby, Smalltalk, Groovy[2], язык D[3] |
Сайт: |
developer.apple.com/swift |
ОС: |
Swift — мультипарадигменный объектно-ориентированный язык программирования, созданный компанией Apple для разработчиков iOS и OS X. Swift работает с фреймворками Cocoa и Cocoa Touch и совместим с основной кодовой базой Apple, написанной на Objective-C. Swift задумывался как более безопасный язык в сравнении с Objective-C. Язык поддерживается в среде программирования Xcode 6;[4] программы на нем компилируются при помощи Apple LLVM и используют рантайм Objective-C, что делает возможным использование обоих языков (а также pure С и С++) в рамках одной программы. Был анонсирован на конференции разработчиков WWDC 2014[5].
Разработка Swift началась в 2010 году Крисом Латтнером, руководителем отдела разработки инструментов разработки в Apple и одним из основных разработчиков LLVM. Swift заимствовал идеи из «Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, и еще из стольких многих языков, что сложно перечислить»[6].
2 июня 2014 года на конференции WWDC был представлен язык программирования Swift. Также было представлено бесплатное руководство по использованию языка объёмом в 500 страниц, доступное на сервисе «iBook Store»[7].
Старший вице президент по разработке программного обеспечения Apple Крейг Федериги во время анонса этого продукта заявил, что Swift был заложен ещё в платформе NeXT (ОС NeXTSTEP выпускалась в 1989–1995 годах), которая стала основой для OS X, а затем и iOS[8].
Версия Swift 1.0 была выпущена 9 сентября 2014 года, вместе с «Gold Master» версией Xcode 6.0 для iOS.
Swift берет довольно многое из Objective-C, однако он определяется не указателями, а типами переменных, которые обрабатывает компилятор. По аналогичному принципу работают многие скриптовые языки. В то же время, он предоставляет разработчикам многие функции, которые прежде были доступны в C++ и Java, такие как определяемые наименования, так называемые обобщения и перегрузка (overloading) операторов.
Часть функций языка выполняется быстрее по сравнению с другими подобными языками. Например, сортировка комплексных объектов выполняется в 3,9 раз быстрее, чем в Python, и почти в 1,5 раза быстрее, чем в Objective-C.
Код, написанный на Swift, может работать вместе с кодом, написанном на языках программирования C, C++ и Objective-C в рамках одного и того же проекта[1].
// Переменные var implicitInteger = 70 var implicitDouble = 70.0 var explicitDouble: Double = 70
// Константы let numberOfApples = 3 let numberOfOranges = 5 let appleSummary = "I have \(numberOfApples) apples." let fruitSummary = "I have \(numberOfApples + numberOfOranges) pieces of fruit."
println("Hello, world") let people = ["Anna": 67, "Beto": 8, "Jack": 33, "Sam": 25] for (name, age) in people { println("\(name) is \(age) years old.") }
Язык программирования Си | |
---|---|
ANSI C (C89 и C90) • C99 • C11 | |
Компиляторы | Borland Turbo C • Clang • GCC • LCC • Pelles C • PCC • TCC • Visual C++ (C++/CLI • C++/CX) • Watcom C/C++ compiler |
Библиотеки | Стандартная библиотека языка Си • glibc • dietlibc • uClibc • Newlib • Eglibc • Bionic |
Особенности | C-строка • Синтаксис • Препроцессор • Заголовочные файлы • Типы и объявления переменных • Функции |
Некоторые потомки | C++ • C# • D • Objective-C • Swift • Java • Alef • Limbo • Go • Vala |
C и другие языки | C и C++ (Совместимость • Операторы) • Сравнение Pascal и C • Компилятор C в байт-код Java |
Категория:Язык программирования Си |
Swift (язык программирования).