[swift] SwiftGen을 활용한 데이터 저장 방법

SwiftGen은 iOS 앱 개발에서 사용되는 데이터를 손쉽게 관리할 수 있도록 도와주는 툴입니다. 마치 자동화된 데이터 관리 시스템처럼 작동하여, 키-값 쌍 형태의 데이터를 코드로 쉽게 접근할 수 있게 합니다. 이번 글에서는 SwiftGen을 활용해 데이터를 저장하는 방법에 대해 알아보겠습니다.

SwiftGen 설치 및 설정

SwiftGen은 CocoaPods를 통해 설치할 수 있습니다.

  1. 프로젝트의 Podfile에 SwiftGen을 추가합니다:
pod 'SwiftGen'
  1. 터미널을 열고 프로젝트의 경로로 이동한 후, 아래 명령어를 실행하여 CocoaPods를 설치합니다:
pod install
  1. 설치가 완료되면 .xcworkspace 파일을 열어서 프로젝트를 다시 실행합니다.

  2. SwiftGen의 설정 파일 swiftgen.yml을 프로젝트의 루트 경로에 생성합니다. 설정 파일을 통해 SwiftGen의 동작을 수정할 수 있습니다.

데이터 저장

SwiftGen을 사용하여 데이터를 저장하는 방법은 다양합니다. 아래는 간단한 예제를 통해 예시를 보여드리겠습니다.

  1. Data.swift라는 파일을 생성합니다.

  2. Data.swift 파일에 아래 코드를 작성합니다:

// swiftgen을 사용하여 데이터 생성
import Foundation
import SwiftGen

struct Data {
    static let welcomeMessage = L10n.welcomeMessage
    static let buttonTitle = L10n.buttonTitle
}

위 코드에서는 L10n이라는 SwiftGen이 자동으로 생성한 클래스를 통해 데이터를 접근하고 있습니다. L10n 클래스는 SwiftGen을 통해 생성된 로컬라이즈된 문자열을 관리하는 클래스입니다.

  1. 원하는 데이터를 swiftgen.yml 파일에 정의합니다. 예를 들어, 아래와 같이 정의할 수 있습니다:
strings:
  struct_name: L10n
  outputs:
    - template: structured-swift5
      output: "${CONFIGURATION_TEMP_DIR}/Generated/Strings.swift"
      params:
        enumName:
          skipNormalizing: true
  inputs:
    - resources/**/*.{strings,stringsdict}

위 설정 파일에서는 .strings 파일과 .stringsdict 파일을 찾아서 SwiftGenL10n 클래스를 생성하도록 지시하고 있습니다.

  1. Data.swift 파일이 속한 위치에서 Terminal을 실행하여 swiftgen 명령어를 실행합니다. 이 명령어는 swiftgen.yml에 지정된 설정을 바탕으로 데이터를 생성합니다.

  2. 데이터가 생성되면 Generated/Strings.swift 파일에 접근하여 데이터를 사용할 수 있습니다.

이제 SwiftGen을 사용하여 데이터를 손쉽게 관리하고 앱 개발을 더욱 효율적으로 진행할 수 있습니다.

결론

SwiftGen은 iOS 앱 개발에서 데이터를 손쉽게 관리할 수 있도록 도와주는 매우 유용한 툴입니다. 데이터 저장 방법에 대해 알아보았는데요. SwiftGen을 활용하면 데이터를 코드로 접근하고 사용할 수 있어 개발 생산성을 높일 수 있습니다. 제공된 예제를 통해 SwiftGen을 활용해보세요.