투케이2K

400. (ios/swift5) [라이브러리] CocoaPods , Carthage , Swift Package Manager (SPM) 차이점 설명 본문

IOS

400. (ios/swift5) [라이브러리] CocoaPods , Carthage , Swift Package Manager (SPM) 차이점 설명

투케이2K 2023. 12. 19. 20:28
반응형

[개발 환경 설정]

개발 툴 : XCODE

개발 언어 : SWIFT5

 

[설 명]

 

-------------------------------------------------------------------------------
[CocoaPods 설명]
-------------------------------------------------------------------------------
1. 초기 iOS 개발 부터 사용해온 라이브러리 참조 방식

2. Dynamic, Static 라이브러리를 모두 지원

3. 대부분의 라이브러리가 코코아팟을 지원

4. 단점 : PC 환경 (os 버전 향상) 및 Xcode 버전 향상 시 코코아팟 전체 업데이트 및 새롭게 빌드 수행 필요 (오랜 시간 걸림 / 의존성 수동 관리)
-------------------------------------------------------------------------------






-------------------------------------------------------------------------------
[Carthage 설명]
-------------------------------------------------------------------------------
1. arthage update 를 실행할때만 한 번 프레임워크를 빌드하므로 코코아팟에 비해 프로젝트 빌드 속도가 빠름

2. 초기 프레임워크를 추가하는 것 외에 프로젝트 설정이 바뀌지 않음

3. 의존성 자동 관리 수행 (Pc Os 및 Xcode 버전이 변경 되더라도 자동 업데이트 및 알림 공지 표시)

4. 단점 : 사용자나 인기가 많은 라이브러리가 아니라면 카르타고를 지원하지 않을 수 있음
-------------------------------------------------------------------------------






-------------------------------------------------------------------------------
[Swift Package Manager 설명]
-------------------------------------------------------------------------------
1. 애플이 정식으로 지원하는 라이브러리 참조 프레임워크

2. 의존성 자동 관리 수행 (Pc Os 및 Xcode 버전이 변경 되더라도 자동 업데이트 및 알림 공지 표시)

3. Xcode 의 GUI 환경에서 관리가 가능 (11.0 이상)

4. 단점 : 
   - 사용자나 인기가 많은 라이브러리가 아니라면 SPM을 지원하지 않을 수 있음
   - 최근 오픈된 프레임워크 인 만큼 해결되지 않은 버그 이슈가 많이 있음
-------------------------------------------------------------------------------

 

반응형
Comments