본문 바로가기
iOS/SwiftUI

[SwiftUI] 데이터 주도적 (Data Driven)

by Sky Titan 2022. 1. 8.
728x90
 

핵심만 골라 배우는 SwiftUI 기반의 iOS 프로그래밍 - YES24

SwiftUI는 물론 애플리케이션 개발과 출시를 위한 모든 과정을 담았다!이 책의 목적은 SwiftUI와 Xcode 11, 그리고 스위프트 5 프로그래밍 언어를 사용하여 iOS 13 애플리케이션 제작 기술을 전달하는 데

www.yes24.com

데이터 주도적 (Data Driven)

  • SwiftUI가 데이터 주도적이지만 사용자에 의해 생성되는 이벤트는 처리를 해주어야 한다.
    • 사용자가 버튼을 눌렀을 때 어떤 반응을 해야하는 지 등
  • 데이터 주도라는 것은 앱 데이터(Data)와 앱의 사용자 인터페이스(UI) 및 로직 사이의 관계에대한 의미이다.

 

바인딩 (Binding)

  • SwiftUI 이전에는 앱 내에 있는 데이터의 현재 값을 검사하려면 그에 대한 코드를 앱에 포함해야했다.
    • 데이터가 변한다면 UI가 항상 최신 데이터를 반영하는 코드도 작성해야했다.
    • 때문에 동일한 Data Source를 앱의 여러 영역에서 사용할 경우 소스 코드의 복잡도가 증가한다.
  • SwiftUI는 앱의 Data Model, UI Componenet, Business Logic을 바인딩(Binding)하는 방법으로 이러한 복잡도를 해결한다.
  • 데이터 주도로 구현한 데이터 모델은 앱의 다른 곳에서 구독(Subscribe)할 수 있는 데이터 변수를 게시(Publish)한다.
    • 이런 방법으로 해당 데이터를 구독하는 구독자들에게 데이터의 변경을 알릴 수 있다.
728x90

댓글