관리 메뉴

김종권의 iOS 앱 개발 알아가기

[iOS - swift] Xcode의 Target, Project, Workspace 개념 본문

iOS 기본 (swift)

[iOS - swift] Xcode의 Target, Project, Workspace 개념

jake-kim 2022. 6. 16. 22:01

Xcode에서의 Target

  • Project나 Workspace의 파일들을 Build하여 생성되는 End Product를 의미

Xcode에서의 Project

  • 모든 파일, 리소스를 빌드하는데 필요한 정보의 저장소 (repository)
  • 프로젝트는 빌드하는 방법을 명시하는 end product인 target을 하나 이상 포함

  • Project가 가지고 있는 정보
    • 소스파일에 대한 참조
    • structure navigator에서 소스파일을 그룹화
    • Debug, Release와 같은 build configuration을 설정 가능
  • .xcodeproj라는 디렉토리에 터미널을 통해서 들어가면 아래와 같은 정보가 존재
    • project.pbxproj - 각 파일들의 참조값들을 UUID들로 정의되어 있는 파일
cd {projectName}.xcodeproj 
open .
ls -a
.			project.pbxproj		xcuserdata
..			project.xcworkspace

Xcode에서의 workspace

  • Xcode의 Project 및 기타 리소스를 그룹하하여 함께 작업할 수 있는 Xcode document
  • 다수의 Project를 사용하고 싶은 경우, workspace 하위로 관리
  • 각 Project의 파일을 구성하는것 외에도 workspace에 포함된 Project들과 Target간의 관계를 제공

ex) pod install 시에 workspace가 생기는데, 내부를 들어가보면 Pods Project가 생긴것을 확인

> Project가 2개 이상되었기 때문에 이들의 관계를 하나로 묶어서 관리할 Workspace가 필요하여 pod install하면 자동으로 workspace가 생성

Comments