SwiftGen은 iOS 및 macOS 개발을 위한 자동화 도구입니다. 이 도구를 사용하면 앱 내의 이미지, 컬러, 폰트 등의 리소스를 자동으로 생성할 수 있습니다. 이번 포스트에서는 SwiftGen을 사용하여 이미지 자동화 처리하는 방법에 대해 알아보겠습니다.
1. SwiftGen 설치하기
SwiftGen을 사용하기 위해 먼저 Cocoapods를 이용하여 프로젝트에 SwiftGen을 설치해야 합니다. Podfile
에 다음과 같이 추가해주세요.
pod 'SwiftGen'
그리고 터미널에서 pod install
명령어를 실행하여 SwiftGen을 설치합니다.
2. 이미지 리소스 추가하기
프로젝트 내에 사용할 이미지 리소스를 추가합니다. 리소스 파일은 Images.xcassets
에 저장되어 있어야 합니다.
3. SwiftGen 설정하기
SwiftGen을 사용하기 위해선 swiftgen.yml
파일을 설정해주어야 합니다. 프로젝트의 루트 폴더에 swiftgen.yml
파일을 생성하고 다음과 같이 작성해주세요.
# swiftgen.yml
strings:
inputs: [Resources/**/*.strings]
outputs:
- templateName: structured-swift3
output: "${TEMP_DIR}/Strings.swift"
assets:
inputs: [Resources/Images.xcassets]
outputs:
- templateName: swift3
output: "${TEMP_DIR}/Assets.swift"
위 설정에서 inputs
속성의 값으로 리소스가 위치한 경로를 지정해주고, outputs
속성으로 생성될 파일의 경로와 템플릿을 지정합니다.
4. SwiftGen 명령어 실행하기
터미널에서 다음 명령어를 실행하여 SwiftGen을 통해 리소스를 자동으로 생성합니다.
swiftgen
위 명령어를 실행하면 swiftgen.yml
파일에 설정한 경로에 해당하는 Swift 파일들이 생성됩니다. 이 파일들을 프로젝트에 추가하여 사용할 수 있습니다.
5. 자동 생성된 파일 사용하기
SwiftGen을 통해 생성된 Swift 파일에는 리소스에 대한 타입 세이프한 인터페이스가 포함되어 있어 사용하기 편리합니다. 예를 들어, 이미지 리소스의 경우 다음과 같이 사용할 수 있습니다.
let image = UIImage(asset: .logo)
imageView.image = image
위와 같이 리소스를 사용할 때 오타 등의 실수를 방지할 수 있으며, 코드를 작성하는 동안 자동 완성 기능을 활용할 수 있습니다.