Skip to content

번역

이 페이지를 번역하거나 기존 번역을 개선할 수 있습니다.

기여

Best practices

다양한 팀 및 프로젝트와의 수년간 협업 경험을 바탕으로, Tuist와 Xcode 프로젝트를 다룰 때 권장하는 모범 사례들을 정리했습니다. 이러한 모범 사례들은 필수 사항은 아니지만, 프로젝트를 보다 유지보수하기 쉽고 확장 가능한 방식으로 구조화하는데 도움이 될 수 있습니다.

Xcode

권장하지 않는 패턴

원격 환경을 모델링하기 위한 설정

많은 조직이 다양한 원격 환경을 모델링하기 위해 빌드 설정을 사용합니다 (예: Debug-Production or Release-Canary). 하지만 이 접근 방식에는 몇 가지 단점이 있습니다:

  • 불일치: 그래프 전반에 걸쳐 설정이 일관되지 않으면, 빌드 시스템이 일부 타겟에 대해 잘못된 설정을 사용할 수 있습니다.
  • 복잡성: 프로젝트의 로컬 설정과 원격 환경 설정들이 많아질수록 이해하고 관리하기 어려워질 수 있습니다.

다양한 환경을 모델링해야 할 때는 스킴(Scheme)을 사용하여 해결할 수 있습니다. 다양한 환경을 모델링해야 할 때는 스킴(Scheme)을 사용하여 해결할 수 있습니다.

  • 스킴 환경 변수를 설정하세요: REMOTE_ENV=production.

  • 환경 정보를 사용할 번들의 Info.plist에 새로운 키를 추가하세요 (예: 앱 번들): REMOTE_ENV=${REMOTE_ENV}.

  • 이 후 런타임에 해당 값을 읽을 수 있습니다:

    swift
    let remoteEnvString = Bundle.main.object(forInfoDictionaryKey: "REMOTE_ENV") as? String

위와 같은 방식을 사용하면 설정 목록을 간단하게 유지하면서 앞서 언급한 단점들을 방지할 수 있고, 개발자들이 스킴(Scheme)을 통해 원격 환경과 같은 요소를 자유롭게 설정할 수 있습니다.

Released under the MIT License.