[swift] SwiftGen을 이용한 사물 인식 기능

SwiftGen은 Swift 언어용 코드 생성 도구로, 리소스 파일을 자동으로 로드하고 사용할 수 있는 코드를 생성해줍니다. 이번에는 SwiftGen을 이용하여 사물 인식 기능을 구현해보도록 하겠습니다.

1. SwiftGen 설치하기

SwiftGen을 사용하기 위해서는 먼저 SwiftGen을 설치해야 합니다. CocoaPods를 사용하는 경우 Podfile에 다음과 같이 추가합니다:

pod 'SwiftGen'

설치를 완료하려면 터미널에서 pod install을 실행합니다.

2. 리소스 파일 준비하기

사물 인식 기능을 위해 사용할 이미지 파일을 프로젝트에 추가합니다. 이미지가 포함된 폴더 구조를 유지할 경우, SwiftGen이 폴더 구조를 인식할 수 있습니다.

3. SwiftGen 설정하기

SwiftGen을 사용하기 위해 프로젝트의 Build Phase에 스크립트를 추가합니다.

  1. 프로젝트의 Build Phase 탭을 엽니다.
  2. ’+’ 버튼을 클릭하여 “Run Script”를 선택합니다.
  3. 스크립트 편집란에 다음과 같이 입력합니다:
if which swiftgen >/dev/null; then
  swiftgen
else
  echo "error: SwiftGen not installed, download it from https://github.com/SwiftGen/SwiftGen"
  exit 1
fi

4. SwiftGen을 이용한 코드 생성

터미널에서 다음 명령을 실행하여 SwiftGen을 이용해 코드를 생성합니다:

swiftgen

SwiftGen은 프로젝트 내의 리소스 파일을 스캔하고, 이를 기반으로 Swift 코드를 생성합니다. 생성된 코드는 Generated 폴더에 저장됩니다.

5. 사물 인식 기능 구현하기

이제 생성된 코드를 이용하여 사물 인식 기능을 구현할 수 있습니다. 예를 들어, Images 폴더 내에 cat.png라는 이미지 파일이 있다면, Assets.Images.cat을 사용하여 해당 이미지를 로드할 수 있습니다:

let catImage = UIImage(asset: .Images.cat)

위와 같이 코드를 작성하면, SwiftGen이 자동으로 해당 리소스 파일을 찾아서 사용할 수 있는 코드를 생성해줍니다.

참고자료