О Swift
Swift — универсальный язык программирования, доступный новичкам и мощный для экспертов. Он быстрый, современный, безопасный и приятный в работе.
- Swift — универсальный и современный. Подходит для всего, от системного программирования до мобильных и настольных приложений и облачных сервисов.
- Swift — безопасный. Неопределённое поведение — враг безопасности, поэтому лучше ловить ошибки до выпуска программного обеспечения. Swift делает очевидный путь самым безопасным.
- Swift — быстрый в выполнении и написании. Он обладает предсказуемой и стабильной производительностью, сопоставимой с языками на основе C, не жертвуя дружественностью для разработчиков.
- Swift — доступный и мощный. От одной строки «Hello, World!» до масштабных приложений с сотнями тысяч строк кода. Swift масштабируется под ваши потребности.
Инструменты
Инструменты — важная часть экосистемы Swift. Мы стремимся к хорошей интеграции в набор инструментов разработчика, к быстрому созданию, отличной диагностике и поддержке интерактивных опытов разработки. Инструменты могут сделать программирование гораздо мощнее, например, как Swift-платформы в Xcode или веб-REPL при работе с кодом Linux-серверов.
Функции
Swift включает функции, которые делают код более лёгким для чтения и написания, при этом предоставляя разработчику необходимый контроль, характерный для истинного языка системного программирования. Swift поддерживает выведенные типы для повышения чистоты кода и уменьшения вероятности ошибок, а модули устраняют заголовки и обеспечивают пространства имён. Память управляется автоматически, и вам даже не нужно печатать точки с запятой. Swift также заимствует из других языков, например, именованные параметры, унаследованные от Objective-C, выражаются в чистом синтаксисе, который делает API в Swift лёгкими для чтения и обслуживания.
Функции Swift разработаны для совместной работы, создавая мощный и вместе с тем приятный в использовании язык. Некоторые дополнительные функции Swift включают:
- Замыкания, объединённые с указателями на функции
- Кортежи и несколько значений возврата
- Обобщения
- Быстрая и лаконичная итерация по диапазону или коллекции
- Структуры, поддерживающие методы, расширения и протоколы
- Шаблоны функционального программирования, например, map и filter
- Встроенная мощная обработка ошибок
- Расширенный поток управления с использованием
do,guard,deferиrepeatключевыми словами
Безопасность
Swift изначально был разработан как более безопасный, чем языки на основе C, и исключает целые классы небезопасного кода. Переменные всегда инициализируются перед использованием, массивы и целые числа проверяются на переполнение, а память управляется автоматически. Синтаксис настроен таким образом, чтобы легко определить ваше намерение — например, простые ключевые слова из трёх символов определяют переменную (var) или константу (let).
Ещё одной функцией безопасности является то, что по умолчанию объекты Swift никогда не могут быть nil, а попытка создать или использовать объект nil приводит к ошибке времени компиляции. Это делает написание кода гораздо чище и безопаснее, предотвращая распространённую причину сбоев во время выполнения. Однако существуют случаи, когда nil уместно, и для этих ситуаций Swift имеет инновационную функцию — необязательные значения. Необязательное значение может содержать nil, но синтаксис Swift заставляет вас безопасно обращаться с ним, используя ?, чтобы указать компилятору, что вы понимаете поведение и обработаете его безопасно.
Поддержка платформ
Один из самых захватывающих аспектов разработки Swift в открытом доступе — знание о том, что теперь он свободно портируется на множество платформ, устройств и вариантов использования.
Наша цель — обеспечить совместимость исходного кода Swift на всех платформах, даже если механизмы фактической реализации могут отличаться от одной платформы к другой. Основной пример заключается в том, что платформы Apple включают в себя исполняемую среду Objective-C, которая необходима для доступа к фреймворкам платформы Apple, таким как UIKit и AppKit. На других платформах, таких как Linux, исполняемая среда Objective-C отсутствует, так как она не требуется.
Проект базовых библиотек Swift направлен на расширение кроссплатформенных возможностей Swift путём предоставления переносимых реализаций основных фреймворков Apple (например, Foundation) без зависимостей от исполняемой среды Objective-C. Хотя базовые библиотеки находятся на ранней стадии разработки, они в конечном итоге обеспечат улучшенную совместимость исходного кода Swift на всех платформах.
Платформы Apple
Swift с открытым исходным кодом может использоваться на Mac для разработки приложений для всех платформ Apple: iOS, macOS, watchOS и tvOS. Более того, двоичные сборки Swift с открытым исходным кодом интегрируются с инструментами разработки Xcode, включая полную поддержку системы сборки Xcode, автодополнения кода в редакторе и интегрированную отладку, позволяя каждому экспериментировать с последними разработками Swift в знакомой среде разработки Cocoa и Cocoa Touch.
Linux
Swift с открытым исходным кодом может использоваться на Linux для создания библиотек и приложений Swift. Двоичные сборки с открытым исходным кодом предоставляют компилятор Swift и стандартную библиотеку, Swift REPL и отладчик (LLDB), а также базовые библиотеки, позволяя сразу приступить к разработке на Swift.
Windows
Swift с открытым исходным кодом может использоваться на Windows для создания библиотек и приложений Swift. Сборки с открытым исходным кодом предоставляют инструменты разработки C/C++/Swift, стандартную библиотеку и отладчик (LLDB), а также базовые библиотеки, позволяя сразу приступить к разработке на Swift. SourceKit-LSP включён в релизы для повышения производительности разработчиков с IDE по их выбору.
Новые платформы
Мы с нетерпением ждём новых мест, где мы сможем применить Swift — вместе. Мы действительно верим, что этот язык, который мы любим, может сделать программное обеспечение безопаснее, быстрее и проще в обслуживании. Мы хотели бы получить вашу помощь, чтобы распространить Swift на ещё большее количество вычислительных платформ.
Swift.org и открытый исходный код
3 декабря 2015 года язык Swift, поддерживающие библиотеки, отладчик и менеджер пакетов были опубликованы под лицензией Apache 2.0 с исключением для библиотеки времени выполнения, и был создан Swift.org для размещения проекта. Исходный код размещён на GitHub, где каждый может получить код, самостоятельно его скомпилировать и даже создать запросы на включение изменений, чтобы внести свой вклад в проект. Каждый приветствуется, даже просто для отправки отчёта об ошибках. На сайте также доступны отличные руководства по началу работы Getting Started.
Проект управляется основной командой инженеров, определяющих стратегическое направление, работая с сообществом, и коллекцией владельцев кода, ответственных за повседневное управление проектом. Руководители технических направлений происходят из сообщества участников, и любой может получить право руководить определённой областью Swift. Обзор сообщества содержит подробную информацию о том, как управляется сообщество Swift.
Проекты
Язык Swift управляется как набор проектов, каждый со своими репозиториями. Текущий список проектов включает:
- Командная строка компилятора Swift
- Стандартная библиотека, включённая в язык, стандартная библиотека
- Базовые библиотеки, предоставляющие функциональность более высокого уровня
- Отладчик LLDB, который включает Swift REPL
- Менеджер пакетов Swift для распространения и сборки исходного кода Swift
- Поддержка Xcode playground для включения playgrounds в Xcode.
The Swift Programming Language, Copyright © 2014-2025 Apple Inc.
Swift and the Swift logo are trademarks of Apple Inc.
Documentation for Swift 6.0.3
https://www.swift.org/about/