🔥 패키지 만들기

274자
4분

Swift 패키지 매니저를 사용하면 간단하게 Swift 패키지를 만들 수 있어요. 패키지란 시멘틱 버전 태그가 붙은 Git 저장소로, Swift 소스 코드와 Package.swift 매니페스트 파일을 루트에 포함하고 있죠.

라이브러리 패키지 만들기

라이브러리 패키지에는 다른 패키지에서 사용하고 의존할 수 있는 코드가 들어 있어요. 시작하려면 디렉터리를 만들고 swift package init 명령을 실행하세요:

$ mkdir MyPackage
$ cd MyPackage
$ swift package init # 또는 swift package init --type library
$ swift build
$ swift test
text

그러면 라이브러리 패키지에 필요한 디렉터리 구조와 단위 테스트 작성을 위한 타겟이 생성돼요. 라이브러리 패키지는 Target Format Reference에 설명된 대로 여러 타겟을 포함할 수 있습니다.

실행 파일 패키지 만들기

Swift 패키지 매니저로 커맨드 라인에서 실행할 수 있는 네이티브 바이너리를 만들 수 있어요. 시작하려면:

$ mkdir MyExecutable
$ cd MyExecutable
$ swift package init --type executable
$ swift build
$ swift run
Hello, World!
text

이렇게 하면 실행 파일 타겟에 필요한 디렉터리 구조가 생성돼요. 타겟의 소스에 main.swift 파일이 있으면 어떤 타겟이든 실행 파일 타겟으로 바꿀 수 있어요. 전체 레이아웃 레퍼런스는 여기에 있어요.

매크로 패키지 만들기

Swift 패키지 매니저로 사용자 정의 매크로에 필요한 반복적인 코드를 자동 생성할 수 있어요:

$ mkdir MyMacro
$ cd MyMacro
$ swift package init --type macro
$ swift build
$ swift run
The value 42 was produced by the code "a + b"
text

이렇게 하면 swift-syntax를 필수 의존성으로 담고 있는 .macro 타입 타겟과 매크로 코드가 들어 있는 라이브러리 .target, 그리고 매크로를 실행하기 위한 .executableTarget.testTarget을 포함하고 있는 패키지가 생성됩니다. StringifyMacro라는 예제 매크로는 Swift 에볼루션 제안서의 Expression Macros 부분과 WWDC 세션 동영상 Write Swift macros에서 설명하고 있습니다. 매크로에 대해 더 자세히 알고 싶다면 The Swift Programming Language 책을 참고해 보시는 것이 좋겠습니다.