SwiftUI

SwiftUI
Типпрограмний каркас і віджетний інструментарійd Редагувати інформацію у Вікіданих
РозробникApple Inc. Редагувати інформацію у Вікіданих
Операційна системаiOS, IPadOS, macOS, TvOS, Watch OS і visionOSd Редагувати інформацію у Вікіданих
Мова програмуванняSwift Редагувати інформацію у Вікіданих

SwiftUI — це декларативна структура[1] для побудови інтерфейсів користувача для iOS, iPadOS, watchOS, tvOS, visionOS та macOS, розроблена компанією Apple Inc. для мови програмування Swift.

Огляд

SwiftUI є декларативним, на відміну від імперативного синтаксису, який використовується в інших структурах розробки Apple, таких як UIKit і AppKit. SwiftUI дозволяє 2D-креслення, анімацію, обробку подій, віджети та зв'язування даних. SwiftUI автоматично синхронізує перегляди інтерфейсу користувача та дані.[2]

SwiftUI інтегрується з іншими технологіями Apple, такими як Xcode та Swift Playgrounds, щоб забезпечити попередній перегляд у реальному часі під час редагування[3][4] разом із підтримкою налагодження та інших функцій розробки.

SwiftUI забезпечує взаємодію з представленнями UIKit і AppKit через протоколи UIViewRepresentable і NSViewRepresentable відповідно.[5][6]

історія

SwiftUI було анонсовано на Всесвітній конференції розробників компанії Apple (WWDC) 3 червня 2019 року та додано в iOS 13 і macOS Catalina.[1]

Під час WWDC 2020 і циклу випуску iOS 14 Apple додала підтримку карт із переглядом Map з інтерфейсом на основі Apple Maps через MapKit.[7] MapKit дозволяє додавати анотації до карти та супутникові зображення.

Під час WWDC 2021 і циклу випуску iOS 15 Apple додала елемент Canvas, додавши підтримку миттєвого режиму малювання та ефективного 2D-малювання.[8]

Під час WWDC 2022 і циклу випуску iOS 16 Apple випустила Swift Charts, структуру для створення настроюваних і доступних діаграм.[9]

Під час WWDC 2023 Apple анонсувала Apple Vision Pro, і підтримку пристрою було додано до SwiftUI, а також нові види для вмісту AR, такі як RealityView та ImmersiveSpace.[10]

Приклади

Нижче наведено приклад простої програми Hello World . Атрибут @main визначає точку входу в програму. Стандартною практикою у SwiftUI є розділення структури програми та представлень на різні структури відповідно до архітектурного шаблону Model–View–ViewModel (MVVM).[11] </link>

import SwiftUI

@main
struct AnApp: App {
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}

struct ContentView: View {
    var body: some View {
        Text("Hello, World!")
    }
}

Список літератури

  1. ↑ а б Mayo, Benjamin (3 червня 2019). Apple announces SwiftUI, a modern declarative user interface framework for Apple platforms. 9to5mac.com. Процитовано 22 січня 2024.
  2. ↑ SwiftUI. Apple Developer Documentation (амер.). Процитовано 10 січня 2024.
  3. ↑ Previews in Xcode. Previews in Xcode – Apple Developer Documentation (англ.). Архів оригіналу за 7 листопада 2023. Процитовано 7 листопада 2023.
  4. ↑ Swift Playgrounds. Apple Developer (англ.). Процитовано 31 січня 2024.
  5. ↑ Interfacing with UIKit. Apple Developer Documentation (амер.). Процитовано 31 січня 2024.
  6. ↑ AppKit integration. Apple Developer Documentation (амер.). Процитовано 6 жовтня 2024.
  7. ↑ MapKit for SwiftUI. Apple Developer Documentation (амер.). Процитовано 10 січня 2024.
  8. ↑ Canvas. Apple Developer Documentation (амер.). Процитовано 31 січня 2024.
  9. ↑ Swift Charts. Apple Developer Documentation (амер.). Процитовано 31 січня 2024.
  10. ↑ Meet SwiftUI for spatial computing - WWDC23 - Videos. Apple Developer (англ.). Процитовано 31 січня 2024.
  11. ↑ Hudson, Paul (2018). Swift Design Patterns (English) . Paul Hudson.

Примітки

Посилання

Подальше читання