Sourcery는 Swift의 코드 생성 도구로서, 소스 코드를 분석하여 기본 코드를 생성하거나 추가 코드를 자동으로 추가하는 등 다양한 작업을 수행할 수 있습니다. 이 문서에서는 Swift Sourcery의 플러그인을 개발하는 방법에 대해 알아보겠습니다.
1. 플러그인 프로젝트 생성
Sourcery 플러그인을 개발하기 위해서는 먼저 새로운 Swift 프로젝트를 생성해야 합니다. 아래의 명령어를 사용하여 프로젝트를 생성합니다.
$ mkdir MyPlugin
$ cd MyPlugin
$ swift package init --type library
위 명령어를 실행하면 MyPlugin 디렉토리에 새로운 Swift 패키지 프로젝트가 생성됩니다.
2. 플러그인 작성
Sourcery 플러그인은 Swift 프로젝트의 패키지로 생성되며, 주로 Runner/main.swift
파일에 플러그인 코드를 작성합니다. 이 파일은 Sourcery로 실행될 때 플러그인 코드가 실행되는 진입점입니다.
아래는 간단한 플러그인 코드의 예시입니다.
import SourceryFramework
class MyPlugin: ExampleRunnerDelegate {
func process(result: [String: NSObject]) {
// 플러그인 작업 수행
}
}
let runner = ExampleRunner(delegate: MyPlugin())
runner.run()
위 코드는 Sourcery 프레임워크를 가져오고, ExampleRunnerDelegate
프로토콜을 채택하는 MyPlugin
클래스를 정의합니다. process(result:)
메소드 내에서 실제 플러그인 작업을 수행하도록 작성합니다. 마지막으로, ExampleRunner
를 생성하고 플러그인을 실행하는 run()
메소드를 호출합니다.
3. 플러그인 빌드 및 설치
플러그인 코드를 작성한 후에는 빌드하여 실행 가능한 파일을 생성해야 합니다. 아래의 명령어를 사용하여 플러그인을 빌드합니다.
$ swift build --product MyPluginExecutable
위 명령어를 실행하면 .build/debug/MyPluginExecutable
경로에 플러그인 실행 파일이 생성됩니다.
빌드된 플러그인을 Sourcery에 설치하려면 해당 파일을 Sourcery가 실행되는 디렉토리에 복사하면 됩니다.
4. 플러그인 실행
Sourcery가 설치된 디렉토리로 이동한 후, 아래 명령어를 사용하여 플러그인을 실행합니다.
$ sourcery
Sourcery가 실행될 때 등록된 플러그인이 자동으로 로드되어 코드 생성 작업을 수행합니다.
5. 참고 자료
- Sourcery GitHub Repository
- Sourcery Documentation
- Sourcery Templates
- Using Sourcery with Swift Package Manager
위의 참고 자료를 통해 더 자세한 정보를 얻을 수 있습니다.