SwiftUI 시작하기
원문 : https://developer.apple.com/kr/xcode/swiftui/
애플 개발자 싸이트에 있는글을 그대로 복사해왔습니다. 문제시 삭제하겠습니다.
더 우수한 앱. 더 적은 코드.
SwiftUI는 Swift의 성능을 바탕으로 모든 Apple 플랫폼에서 사용자 인터페이스를 구축할 수 있는 혁신적이고 간소화된 방법입니다. 단 하나의 도구 구성 및 API를 통해 모든 Apple 기기에서 사용할 수 있는 사용자 인터페이스를 구축합니다. 읽기 쉽고 작성하기 편한 선언적 Swift 구문을 통해 SwiftUI는 새로운 Xcode 디자인 도구와 매끄럽게 연동되면서 코드와 디자인이 완벽하게 동기화되도록 합니다. 또한 유동적 글자 크기 조절, 다크 모드, 현지화 및 손쉬운 사용을 자동 지원하므로 SwiftUI 코딩 첫 줄부터 가장 강력한 UI 코드를 작성할 수 있습니다.
선언적 구문
SwiftUI는 선언적 구문을 사용하므로 사용자 인터페이스의 기능을 명시하기만 하면 됩니다. 예를 들어, 텍스트 필드로 구성된 항목의 목록을 작성한 다음 각 필드의 정렬, 서체 및 색상을 설명하면 됩니다. 코드가 그 어느때보다 간단하고 가독성이 향상되어 시간이 절약되고 유지 관리가 용이합니다.
https://developer.apple.com/videos/play/wwdc2019/204/
이 선언적 스타일은 애니메이션과 같은 복잡한 개념에도 적용됩니다. 코드 몇 줄만으로 거의 모든 컨트롤에 애니메이션을 손쉽게 추가하고 바로 사용할 수 있는 효과 모음을 선택할 수도 있습니다. 런타임에서 시스템은 부드러운 움직임을 만들기 위해 필요한 모든 단계를 다루며, 또한 앱의 안정성을 위해 방해 프로세스까지 처리합니다. 따라서 개발자는 이와 같이 간단한 애니메이션을 사용하여 앱에 생동감을 불어넣어 줄 새로운 방법을 찾을 수 있습니다.
디자인 도구
Xcode 11에는 SwiftUI를 사용하여 드래그 앤 드롭만큼 간단하게 인터페이스를 빌드할 수 있는 새로운 직관적인 도구가 포함되어 있습니다. 디자인 캔버스에서 작업하면 편집하는 모든 내용이 옆에 표시되는 편집기의 코드와 완벽하게 동기화됩니다. 코드는 입력하는 대로 미리보기로 즉시 확인이 가능하며, 미리보기에서 변경하는 사항은 코드에 즉시 반영됩니다. Xcode는 변경 사항을 즉시 재컴파일하고 실행 중인 앱 버전에 삽입하므로 상시 확인 및 편집이 가능합니다.
드래그 앤 드롭. 캔버스에서 컨트롤을 드래그하여 사용자 인터페이스 내에서 간단히 구성 요소를 정렬할 수 있습니다. 속성을 클릭하여 열고 서체, 색상, 정렬 및 기타 디자인 옵션을 선택하고, 커서를 움직여 컨트롤을 쉽게 다시 정렬할 수 있습니다. 이러한 시각적인 편집기의 상당 부분은 코드 편집기 내에서도 사용 가능하므로 인터페이스에서 직접 코딩하는 부분을 선호하는 경우에도 속성을 사용하여 각 컨트롤에서 새 수정자를 탐지할 수 있습니다. 또한 라이브러리에서 컨트롤을 드래그하여 디자인 캔버스 또는 코드에 직접 드롭할 수 있습니다.
동적 대체. Swift 컴파일러 및 런타임은 Xcode 전체에서 기본 제공되므로 앱을 지속적으로 구축하고 실행할 수 있습니다. 개발자에게 표시되는 디자인 캔버스는 사용자 인터페이스가 아닌 라이브 앱과 비슷합니다. 또한 Xcode는 Swift의 새 기능인 '동적 대체'를 사용하여 라이브 앱에서 직접 편집된 코드를 바꿀 수 있습니다.
미리보기. 이제 SwiftUI 보기 중 하나 또는 여러 개의 미리보기를 생성하여 샘플 데이터를 얻을 수 있으며 큰 서체, 현지화 또는 다크 모드와 같이 사용자에게 표시할 모든 항목을 구성할 수 있습니다. 또한 미리보기에서는 UI를 원하는 기기에서 원하는 방향으로 표시할 수 있습니다.
모든 Apple 플랫폼에서 기본 지원
SwiftUI는 수십 년간 전 세계에서 가장 혁신적이고 직관적인 사용자 인터페이스를 만든 경험을 토대로 제작되었습니다. 컨트롤 및 플랫폼에 특화된 경험과 같이 Apple 환경에서 사용자가 선호하는 모든 것들이 코드를 통해 멋지게 표현됩니다. SwiftUI는 네이티브 방식으로 제공되므로 적은 수의 코드와 대화식 디자인 캔버스를 사용하여 앱에서 각 플랫폼의 검증된 기술에 바로 접근할 수 있습니다.
'IT > Swift' 카테고리의 다른 글
SwiftUI 튜토리얼 1-1 뷰의 생성과 조합 (0) | 2019.10.17 |
---|---|
SwiftUI - UIHostingController (0) | 2019.10.16 |
[swift] throw, do-catch, rethrows, defer (0) | 2019.10.09 |
[swift] Binding, Tuple, Where (0) | 2019.10.06 |
[swift] Wildcard, Nested Types (0) | 2019.10.05 |