SwiftUI란?
- SWift 언어로 모든 플랫폼에서 앱에 대한 UI와 동작을 선언해주는 프레임워크 (아이폰, 아이패드, macOS, 비전OS)
- 상태 중심 프레임워크
- Xcode 12, ios 13 이상부터 지원
- Less code, Better code, EveryWhere(어디서든 적은 코드로 더 나은 앱을 개발하자)
장점과 단점
- 선언적 구문 : 어떻게 보다 무엇을 하고 싶은지 선언하고 시스템이 선언에 따라 자동으로 처리
- 간결한 코드로 가독성 향상 및 유지보수 용이
- 손쉬운 View 조합을 통한 구현 : 레고
- Modifier Chaning을 통한 편리한 구현 : SwiftUI는 구조체로, 편리하고 필요한 구현이 가능
- Preview의 강력한 기능
- UIkit을 전부 대체하지 못함
- 낮은 버전에서 사용시 버그가 많음
- 매 버전마다 변경되는 부분들이 많음
SwiftUI의 View Layout 결정 원리
Root View -> Content View -> Background-Color -> Padding -> Text