Опрос: какие фреймворки Swift (iOS/macOS) используют в продакшене
Сообщество разработчиков на Swift продолжает активно расти, а вместе с ним — и экосистема фреймворков. Мы провели опрос среди профессиональных Swift-разработчиков, чтобы выяснить, какие инструменты действительно используются в реальных коммерческих проектах под iOS и macOS. В опросе приняли участие более 500 инженеров из России и СНГ. Делимся ключевыми результатами.
Лидеры: SwiftUI и UIKit — битва поколений
Безусловными фаворитами остаются два фреймворка для построения пользовательских интерфейсов:
- SwiftUI — 68% респондентов используют его в продакшене. Основные причины: декларативный синтаксис, меньший объём кода и отличная интеграция с Xcode Previews. Однако фреймворк всё ещё требует iOS 15+ для полной функциональности, что ограничивает его применение в проектах с широкой поддержкой старых устройств.
- UIKit — 54% разработчиков продолжают использовать его, причём часто в гибридной связке со SwiftUI. UIKit остаётся незаменимым для сложных кастомных анимаций, работы с коллекциями и поддержки iOS 12–14.
Интересно, что 22% опрошенных заявили, что используют оба фреймворка одновременно, комбинируя их через UIHostingController.
Сетевые запросы и архитектура
В работе с сетью и архитектурой данных ситуация следующая:
- URLSession (встроенный) — 71%. Несмотря на появление сторонних библиотек, Apple-решение остаётся стандартом де-факто.
- Alamofire — 33%. Всё ещё популярен для сложных сценариев с кэшированием, повторными попытками и логированием.
- Combine — 29%. Используется для реактивного программирования, чаще всего в связке со SwiftUI и MVVM.
- Async/await (нативный) — 45%. Быстро набирает обороты, особенно в новых проектах.
Серверный Swift: Vapor — бесспорный лидер
Для разработки серверной части на Swift (macOS/Linux) результаты однозначны:
- Vapor — 78% среди тех, кто пишет бэкенд на Swift. Фреймворк предлагает полный стек: маршрутизацию, ORM (Fluent), аутентификацию и WebSocket.
- Hummingbird — 9%. Лёгкий и быстрый, но пока нишевый.
- Kitura (IBM) — 3%. Практически ушёл с рынка, поддержка прекращена.
Хранение данных и кэширование
В локальном хранении лидируют:
- Core Data — 41% (чаще в старых проектах).
- SwiftData — 27% (активно растёт, особенно в iOS 17+).
- Realm — 15% (потеря позиций из-за ухода MongoDB от активной поддержки).
- UserDefaults / Keychain — 89% (используются практически всеми для простых настроек).
Что ещё стоит отметить
Опрос также показал, что 62% разработчиков используют Swift Package Manager как основной инструмент управления зависимостями. CocoaPods и Carthage уходят в прошлое — их доля упала до 18% и 5% соответственно.
Кроме того