SwiftUI vs UIKit. Что выбрать новичку? / Мобильный разработчик

YOUTUBE · 30.11.2025 09:44

Ключевые темы и таймкоды

Введение

0:00
  • Обсуждение выбора между SwiftUI и UIKit для новых проектов на iOS.
  • SwiftUI — декларативный UI-фреймворк от Apple.

Преимущества SwiftUI

0:59
  • Декларативный подход позволяет быстрее писать код и решать сложные задачи.
  • Система типов iOS лежит в основе SwiftUI.
  • Визуальная понятность структуры UI.

Сравнение с Jetpack Compose

1:58
  • Jetpack Compose популярен среди Android-разработчиков.
  • SwiftUI имеет преимущества в производительности и надёжности.

Минимальные требования к iOS

2:58
  • SwiftUI требует iOS 15 для полноценной работы.
  • Проблемы с поддержкой старых версий iOS.

Инфраструктура и архитектура

5:56
  • Для SwiftUI требуется серьёзная инфраструктура.
  • Необходимость адаптации архитектуры проекта под декларативный подход.
  • Сложности с комбинированием классов и обёрток.

Навигация

7:53
  • Навигация в iOS 13 и 14 сложна и не унифицирована.
  • В iOS 15 и 16 появились улучшения, но проблемы остаются.
  • Разработка паттернов для навигации.

Магические баги

8:53
  • SwiftUI надёжнее Jetpack Compose, но новые баги всё равно появляются.
  • Разработчики не могут предсказать все сценарии использования фреймворка.
  • Проблемы с магическими багами, которые могут привести к отказу работы кода.

Проблемы с SwiftUI в iOS 13

9:52
  • В iOS 13 были баги, из-за которых экран крашился в табеле.
  • Проблема была связана с картинкой в профиле.
  • После повышения минимальной версии iOS до 14 стабильность улучшилась.

Производительность и расширяемость SwiftUI

10:51
  • SwiftUI из коробки работает хорошо, но не имеет таких оптимизаций, как Jetpack Compose.
  • Jetpack Compose позволяет заранее скомпилировать «горячие» участки кода.
  • Расширяемость SwiftUI ограничена из-за ограничений Apple.

Аргументы против перехода на SwiftUI

11:50
  • Переход на SwiftUI может потребовать значительных ресурсов и снизить надёжность и производительность.
  • Переход может увеличить команду разработчиков.

Рекомендации по выбору технологии для новых проектов

12:50
  • Для новых проектов рекомендуется использовать SwiftUI, чтобы быть в числе первых и нарабатывать экспертизу.
  • Технологическая кривая важна для поддержания конкурентоспособности.

Проблемы совмещения технологий

13:49
  • Совмещение нескольких технологий может вызвать сложности и проблемы.
  • Рекомендуется переходить на новые технологии последовательно.

Обучение SwiftUI и UIKit

15:46
  • Новичкам рекомендуется изучать SwiftUI и UIKit параллельно.
  • Знание UIKit необходимо для понимания SwiftUI.
  • Рекомендуется начинать с UIKit, а затем переходить на SwiftUI.

Перспективы Jetpack Compose

17:42
  • Jetpack Compose активно захватывает рынок и может стать основным фреймворком в будущем.
  • Знание Jetpack Compose увеличивает шансы на трудоустройство.

Заключение

18:42
  • Переход на новые технологии может сначала вызвать проблемы, но затем приведёт к ускорению работы и увеличению прибыли.
  • Автор призывает делиться опытом в комментариях и Telegram-чате.