Swift — язык программирования с открытым исходным кодом и большим сообществом, разработанный командой Apple.
Apple анонсировала Swift на своей ежегодной конференции для разработчиков WWDC летом 2014 года, представив общественности первую версию языка 1.0. По началу исходный код был закрытым, а 3 декабря 2015 года Apple выложила его в открытый доступ на Github и создала сообщество Swift.org.
Swift в первую очередь предназначен для написания приложений на iOS и macOS, но этим не ограничивается. Как позиционирует Apple: «Целью проекта Swift является создание наилучшего доступного языка для использования, начиная от системного программирования и заканчивая мобильными и настольными приложениями, масштабированием до облачных сервисов.». Главная идея, вложенная в создание языка — упростить разработку и сделать ее удобнее, а код понятнее, при этом он предназначен для замены языков на основе С(C, C++ и Objective-C).
Как и подобает Apple, язык собрал в себе все наработки и опыт других языков программирования, учел недостатки и стал очередным фантастическим продуктом компании. Компилятор оптимизирован для производительности, а язык оптимизирован для разработки, без компромиссов с одной или другой стороны.
Язык строиться на 3-х базовых принципах:
Безопасность. Наиболее очевидный способ написания кода так же должен вести себя безопасно. А значит язык исключает любые проявления неопределенности и двойственности и является строго-типизированным языком. По началу язык может показаться излишне строгим, но именно благодаря этому, SWIFT исключает огромное количество возможных ошибок и багов в программном обеспечении написанном с его использованием.
Быстрота. Swift — англ. стриж — одна из самых быстрых птиц. Так как изначально предполагалось, что Swift придет на смену Си языков, он должен быть высокопроизводительным. Помимо скорости, производительность должна так же быть предсказуемой и последовательной.
Выразительность. Swift выигрывает от десятилетий прогресса в области информатики, предлагая синтаксис, который приятно использовать, с современными функциями, которые ожидают разработчики. При этом работа над языком никогда не заканчивается и постоянно совершенствуется, в том числе, благодаря открытому исходному коду, в его совершенствование вносят большой вклад разработчики из сообщества языка.
Но, как и у всего на свете, у Swift есть и недостатки, но большинство из них устраняются временем.
- Узкая специализация. На данный момент язык используется в основном для разработки под устройства компании Apple, что ограничивает его применение на данный момент времени.
- Разработка с использованием компьютеров Apple. Разрабатывать приложения удастся и на технике под управлением Windows и Linux, но все эти решения неудобные и неполноценные. Разработка приложений обычно происходит в среде разработки Xcode, доступной на macOS, и не все библиотеки и компоненты для разработки есть на других ОС.
- Небольшое русскоязычное комьюнити. Так же является временной проблемой, т.к. количество разработчиков на Swift растет с каждым годом, вместе со спросом на этих специалистов.
- Плохая совместимость со старыми версиями. Так как Swift является достаточно молодым языком, он не поддерживается в старых ОС, которые были до выхода языка.