본문 바로가기
🍎 iOS/SwiftUI

[SwiftUI] SwiftUI란?

by hyebin (Helia) 2023. 3. 15.

SwiftUI

  • WWDC2019에서 발표한 프레임워크
  • 모든 애플 플랫폼(iOS, iPadOS, macOS, watchOS, tvOS)에서 사용자 인터페이스를 만들 수 있게 해주는 개발 패러다임
  • 최소한의 코드 만으로 Swift의 성능을 사용하여 모든 애플 플랫폼에서 사용할 수 있는 앱을 만들 수 있도록 도와줌

SwiftUI 4가지 원칙

  • 선언형 프로그래밍 방식
    • 각 과정을 어떻게 수행해야 할지가 아닌 무엇을 하고 싶은지를 정의하는 방식
    • 개박자가 원하는 UI를 프레임워크에 설명하면 세부 구현은 프레임워크가 대신 처리
  • 자동화
    • 많은 기능을 자동으로 수행될 수 있도록 제공
    • autolayout 코드들이 제거, 화면 전환과 관련된 기능들도 자동화로 단순하게 구현 가능
  • 조합
    • 큰 view를 작은 view로 나누거나, view를 조합해 원하는 view를 만들어낼 수 있도록 지원
    • view를 수정하고 재사용 용이
  • 일관성
    • 데이터가 변경되는 즉시 UI도 자동읋 갱신되며 항상 일관성 있는 결과 도출 가능

SwiftUI 구성요소

  • (product name)App: 앱의 윈도우를 관리하는 파일(UIKit - sceneDelegate, AppDelegate)
  • ContentView: SwiftUI로 프로젝트를 만들었을 때 기본적으로 생성되는 기본 화면 View
    • ContentView: 화면을 그리는 구조체
    • ContentView_Previews: Preview를 그리는 구조체
  • “.”을 사용하여 속성 나열 ⇒ modifier
  • ContentView는 body라는 프로퍼티를 가지는데, body는 단 하나의 View만 리턴
  • View의 생애주기 관리는 .onAppear, .onDisappear modifier를 통해 사용 가능
반응형

'🍎 iOS > SwiftUI' 카테고리의 다른 글

[SwiftUI] Text  (0) 2024.04.18
[SwiftUI] Stack (VStack/HStack/ZStack)  (0) 2024.04.08
[SwiftUI] Property Wrappers  (0) 2024.04.04

댓글