SwiftUI — це декларативна структура для побудови інтерфейсів користувача для iOS, iPadOS, watchOS, tvOS, visionOS та macOS, розроблена компанією Apple Inc. для мови програмування Swift.
Огляд SwiftUI є декларативним, на відміну від імперативного синтаксису, який використовується в інших структурах розробки Apple, таких як UIKit і AppKit. SwiftUI дозволяє 2D-креслення, анімацію, обробку подій, віджети та зв'язування даних. SwiftUI автоматично синхронізує перегляди інтерфейсу користувача та дані.
SwiftUI інтегрується з іншими технологіями Apple, такими як Xcode та Swift Playgrounds, щоб забезпечити попередній перегляд у реальному часі під час редагування разом із підтримкою налагодження та інших функцій розробки.
SwiftUI забезпечує взаємодію з представленнями UIKit і AppKit через протоколи UIViewRepresentable і NSViewRepresentable відповідно.
історія SwiftUI було анонсовано на Всесвітній конференції розробників компанії Apple (WWDC) 3 червня 2019 року та додано в iOS 13 і macOS Catalina.
Під час WWDC 2020 і циклу випуску iOS 14 Apple додала підтримку карт із переглядом Map з інтерфейсом на основі Apple Maps через MapKit. MapKit дозволяє додавати анотації до карти та супутникові зображення.
Під час WWDC 2021 і циклу випуску iOS 15 Apple додала елемент Canvas, додавши підтримку миттєвого режиму малювання та ефективного 2D-малювання.
Під час WWDC 2022 і циклу випуску iOS 16 Apple випустила Swift Charts, структуру для створення настроюваних і доступних діаграм.
Під час WWDC 2023 Apple анонсувала Apple Vision Pro, і підтримку пристрою було додано до SwiftUI, а також нові види для вмісту AR, такі як RealityView та ImmersiveSpace.
Приклади Нижче наведено приклад простої програми Hello World . Атрибут визначає точку входу в програму. Стандартною практикою у SwiftUI є розділення структури програми та представлень на різні структури відповідно до архітектурного шаблону Model–View–ViewModel (MVVM). [ самвидав джерело? ]import SwiftUI
@main struct AnApp: App { var body: some Scene { WindowGroup { ContentView()
struct ContentView: View { var body: some View { Text("Hello, World!")
Список літератури
Примітки
Посилання
SwiftUI в Apple Developer
Подальше читання