나의 발자취
XCode 파일 구조(Project navigator File lists) 설명 본문
The .xcodeproj file
실제적으로는 장소인데, 파인더에서 보면 앱의 설정을(configuration settings) 포함한 하나의 파일로 확인된다. 앱의 정보를 업데이트할 때, 또는 앱스토어에 앱을 제출하기 전에 특정한 세부사항들을 볼 때 사용되는 설정들이다. 앱 이름, 앱 버전, 앱이 지원하는 기기 종류, 배포할 타겟 등
Code_HistoryApp.swift
앱 프로토콜에 따르는 구조체를 포함한다. 지금은 앱의 동작(behavior)이나 구조를 나타내는 것으로 생각하면 된다. 제일 위 구조체의 @main 속성은 이것이 앱의 entry point라는 것을 나타낸다. 앱 최초 실행 시 처음으로 실행되는 .swift 파일이라는 것이다.
UIKit로 짜여진 앱은 AppDelegate 클래스에 의해 entry point가 핸들링되는데, SwiftUI로 짜여진 앱에서도 AppDelegate를 이용할 수 있다. 하지만! 지금처럼 앱 프로토콜을 사용하는 것이 최신+제일 간결한 접근법이다.
ContentView.swift
이 파일은 ContentView 구조체를 가진다. 이 파일은 Code_HistoryApp.swift 파일이 생성될 때 자동으로 생성되는 파일인데, 기본값으로 ContentView는 앱을 최초 실행할 때 유저가 처음으로 보게 되는 화면이다. XCode에서는 ContentView가 비면 안되도록 처음에 실행했을 때 헬로월드가 뜬다.ㅋ
프로젝트 네비게이터에서 파일목록에 보면 Preview Content 폴더가 있을건데, 이것은 PreviewProvider 프로토콜을 따르는 ContentView_Previews 구조가 목록에 있는 것이다. ContentView_Previews는 에디터 영역에서 보이는 프리뷰를 생성하는 역할을 한다. 보통 프리뷰는 샘플 데이터로 생성되므로 한 개의 뷰에 여러 개의 뷰가 있을 수 있다.
Assets.xcassets
앱스토어에 올리기 전에 들어가야 할 파일들을 저장하는 폴더. 앱 아이콘 등
또한 여기서 앱의 테마 컬러인 AccentColor를 명시할수도 있다.
Info.plist
그리고... 젤 중요하다고 생각하는 Info.plist. 이건 Information Property List 를 뜻하는데, 번들을 식별하기 위한 키-밸류쌍들이 구조적으로 들어있는 텍스트 파일이라고 할 수 있다. 근데 Xcode 신버전들은 이제 이 파일의 경로를 다른 곳으로 이동시켜서, 안보여도 걱정안해도 된다.
Preview Content
이 폴더와 Preview Assets.xcassets 카탈로그는 프리뷰를 위한 샘플 데이터를 가지고 있는 것이다. 위에서 언급했듯이 프리뷰는 UI적으로 코드가 변경되었을 때 개발자가 확인하기 쉽게끔 즉각적인 피드백을 주는 역할을 하는데, 최소한의 데이터로 프리뷰를 만들 수도 있지만, UI를 더 효율적으로 테스트하기 위해 다양한 샘플 데이터를 가지고 있는것이 더 낫다. 그래서 이런 샘플 데이터셋(dataset)들이 Preview Assets.xcassets 카탈로그에 존재한다.
Products folder
이 폴더는 .app 파일을 가지고 있는데, 이 파일은 시뮬레이터나 기기에서 앱이 돌아갈 수 있도록 실행가능한 버전 파일이라고 생각하면 된다. 예를 들어 지금의 경우는 이름이 Code History.app 일 것이다.
출처: codecademy
'앱 개발 > iOS' 카테고리의 다른 글
SwiftUI View란? View Modifiers (0) | 2023.06.20 |
---|---|
Switch Statement: Where clause (0) | 2023.06.20 |
Bundle Identifier? Organization Identifier? (0) | 2023.06.13 |
iOS developing - Wireframing, compound assignment operators (1) | 2023.06.13 |
iOS imperative vs declarative (명령형 vs 선언형) (0) | 2023.06.12 |