Carthage: "ν•˜μœ„ 사양"에 λŒ€ν•œ 지원 μΆ”κ°€

에 λ§Œλ“  2015λ…„ 06μ›” 27일  Β·  4μ½”λ©˜νŠΈ  Β·  좜처: Carthage/Carthage

μ–˜λ“€ μ•„,
Carthage κ°€ CocoaPods ν•˜μœ„ 사양과 μœ μ‚¬ν•œ 지원을 μΆ”κ°€ν•  수 μžˆλ‹€λ©΄ 정말 λŒ€λ‹¨ν•  것 κ°™μŠ΅λ‹ˆλ‹€. 이것은 κ°œλ°œμžκ°€ μ˜€λŠ˜λ‚  κ°€μž₯ 인기 μžˆλŠ” ν”„λ ˆμž„μ›Œν¬μ— λŒ€ν•œ 지원을 μΆ”κ°€ν•˜λŠ” ν”„λ ˆμž„μ›Œν¬μ— ν™•μž₯ 및 λ²”μ£Όλ₯Ό κ΅¬μΆ•ν•˜λ„λ‘ ꢌμž₯ν•©λ‹ˆλ‹€.

λ‚˜λŠ” 이것이 ν”„λ ˆμž„μ›Œν¬μ— νŠΉμ • ν™•μž₯을 μΆ”κ°€ν•˜λŠ” λΈŒλžœμΉ˜λ‚˜ 컀밋에 νƒœκ·Έλ₯Ό μ§€μ •ν•¨μœΌλ‘œμ¨ μ˜€λŠ˜λ‚  κ°€λŠ₯ν•˜λ‹€κ³  μƒκ°ν•˜μ§€λ§Œ, 특히 Swift의 μƒˆ 버전이 μΆœμ‹œλ˜κ±°λ‚˜ ν’€ λ¦¬ν€˜μŠ€νŠΈκ°€ μ€„λ‘œ 자λ₯΄λŠ”.

ν‹€λ¦° 뢀뢄은 μ§€μ ν•΄μ£Όμ‹œλ©΄ κ°μ‚¬ν•˜κ² μŠ΅λ‹ˆλ‹€λ§Œ, 이 뢀뢄은 μΈν”„λΌμ—μ„œ μ²˜λ¦¬ν•΄ μ£Όμ‹œλ©΄ 쒋을 것 κ°™μŠ΅λ‹ˆλ‹€.

생각?

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

μ£„μ†‘ν•©λ‹ˆλ‹€. μ΄λŠ” λͺ¨λ“ˆν™” 및 ꡬ성 κ°€λŠ₯성에 λ°˜λŒ€λ˜λŠ” λŒ€κ·œλͺ¨ ν”„λ ˆμž„μ›Œν¬λ₯Ό ꢌμž₯ν•©λ‹ˆλ‹€.

Carthageκ°€ μ„œλ‘œ λ…λ¦½μ μœΌλ‘œ μ‚¬μš©ν•  수 μžˆλŠ” 더 μž‘μ€ ν”„λ ˆμž„μ›Œν¬λ₯Ό ꢌμž₯ν•˜λŠ” 것을 μ„ ν˜Έν•©λ‹ˆλ‹€.

λͺ¨λ“  4 λŒ“κΈ€

이것은 잠재적으둜 xcodeproj 의 λŒ€μƒ μ„€μ • λ˜λŠ” Carthage λ₯Ό 톡해 배포된 λ°”μ΄λ„ˆλ¦¬λ‘œ κ΅¬ν˜„λ  수 μžˆμŠ΅λ‹ˆλ‹€.

μ£„μ†‘ν•©λ‹ˆλ‹€. μ΄λŠ” λͺ¨λ“ˆν™” 및 ꡬ성 κ°€λŠ₯성에 λ°˜λŒ€λ˜λŠ” λŒ€κ·œλͺ¨ ν”„λ ˆμž„μ›Œν¬λ₯Ό ꢌμž₯ν•©λ‹ˆλ‹€.

Carthageκ°€ μ„œλ‘œ λ…λ¦½μ μœΌλ‘œ μ‚¬μš©ν•  수 μžˆλŠ” 더 μž‘μ€ ν”„λ ˆμž„μ›Œν¬λ₯Ό ꢌμž₯ν•˜λŠ” 것을 μ„ ν˜Έν•©λ‹ˆλ‹€.

저도 이것이 μΉ΄λ₯΄νƒ€κ³ λ₯Ό μœ„ν•΄ κ³ λ €λ˜μ–΄μ•Ό ν•  뢀뢄이라고 μƒκ°ν•©λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄ λ§Žμ€ ν”„λ‘œμ νŠΈμ—λŠ” ReactiveCocoa 지원을 μΆ”κ°€ν•˜κΈ° μœ„ν•œ μ†Œν”„νŠΈ μ’…μ†μ„±μœΌλ‘œ ReactiveCocoaκ°€ μžˆμŠ΅λ‹ˆλ‹€.
ν˜„μž¬ 이 경우 두 가지 μ˜΅μ…˜μ΄ μžˆμŠ΅λ‹ˆλ‹€.

  • λ³„λ„μ˜ ν”„λ‘œμ νŠΈμ— ReactiveCocoa 지원 μΆ”κ°€
  • 기본적으둜 ReactiveCocoa 포함(λ‹€λ₯Έ κ°œλ°œμžμ— λŒ€ν•œ 쒅속성 κ°•μ œ 적용)

@jspahrsummers λŠ” ReactiveCocoa 지원을 μΆ”κ°€ν•˜λŠ” μž‘μ€ 선택적 ν”„λ ˆμž„μ›Œν¬λ₯Ό λ§Œλ“œλŠ” μ „μž 방식을 μ„ ν˜Έν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.


또 λ‹€λ₯Έ μ ‘κ·Ό 방식은 ν”„λ‘œμ νŠΈκ°€ μ„œλ‘œ μ’…μ†λœ μ—¬λŸ¬ .frameworksλ₯Ό λ…ΈμΆœν•˜λ„λ‘ ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.
예

  • X.framework(λ…λ¦½ν˜•)
  • XReactiveCocoaExtensions.framework(X.framework 및 ReactiveCocoa.framework에 λŒ€ν•œ 링크)

λ‚˜λŠ” 이것을 λΉ λ₯΄κ²Œ ν…ŒμŠ€νŠΈν–ˆμ§€λ§Œ λ‚˜μ—κ²Œ 이 μ ‘κ·Ό 방식은 맀우 μœ λ§ν•΄ λ³΄μž…λ‹ˆλ‹€. 이런 μ‹μœΌλ‘œ μ—¬λŸ¬ ν”„λ ˆμž„μ›Œν¬λ₯Ό λ…ΈμΆœν•˜λŠ” 단일 ν”„λ‘œμ νŠΈλ₯Ό 계속 κ°€μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€. ReactiveCocoaExtensionsλ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠμœΌλ €λŠ” κ°œλ°œμžλŠ” λΉŒλ“œλœ XReactiveCocoaExtensions.frameworkλ₯Ό λ¬΄μ‹œν•˜λ©΄ λ©λ‹ˆλ‹€.

이 방법에 λŒ€ν•œ μƒκ°μ΄λ‚˜ 주의 사항이 μžˆμŠ΅λ‹ˆκΉŒ?

@aschuch λ‹˜ 말씀에 λ™μ˜ν•©λ‹ˆλ‹€. λ‚˜λŠ” Moya와 ν•¨κ»˜ 이 λ¬Έμ œμ— λΆ€λ”ͺμ³€λ‹€. ν˜„μž¬ Moya의 carthage λΉŒλ“œλŠ” ReactiveMoyaProvider 에 λŒ€ν•΄μ„œλ§Œ ReactiveCocoa에 μ˜μ‘΄ν•˜λ©°, μ΅œμ’… μ‚¬μš©μžκ°€ κ΅¬ν˜„ν•˜κ±°λ‚˜ κ΅¬ν˜„ν•˜μ§€ μ•Šμ„ 수 μžˆμŠ΅λ‹ˆλ‹€.

μ €λŠ” λ³„λ„μ˜ λΆ„κΈ°(Moya, ReactiveMoya 및 RxMoya)μ—μ„œ λ‹€λ₯Έ 쒅속성이 ν¬ν•¨λ˜κ³  κ΄€λ¦¬λ˜λŠ” 자체 포크λ₯Ό λ¦¬νŒ©ν† λ§ν•˜λŠ” μ€‘μž…λ‹ˆλ‹€. 이것은 λͺ‡ 가지 맀우 μ‹¬κ°ν•œ μœ μ§€ 관리 μ˜λ―Έμ™€ νŠΉμ • 개발 νŒ¨ν„΄μ— λŒ€ν•œ μΈν„°νŽ˜μ΄μŠ€λ₯Ό λ…ΈμΆœν•˜λ €λŠ” ν”„λ ˆμž„μ›Œν¬μ— λŒ€ν•œ μ œν•œ 사항이 μžˆμŠ΅λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰