Middle
Ako spravovať závislosti v projekte iOS?
sobes.tech AI
Odpoveď od AI
Existuje niekoľko populárnych spôsobov:
-
CocoaPods:
- Decentralizovaný správca závislostí napísaný v Ruby.
- Používa
.podspecsúbory na opis závislosti. - Inštaluje sa príkazom
sudo gem install cocoapods. - Pridáva Podfile do koreňového adresára projektu.
- Spúšťa sa
pod installna inštaláciu závislostí a vytvorenie pracovného priestoru.xcworkspace.
-
Carthage:
- Decentralizovaný správca závislostí, ktorý skladá frameworky.
- Napísaný v Swift.
- Preferuje binárne frameworky.
- Inštaluje sa cez Homebrew
brew install carthage. - Používa Cartfile na opis závislostí.
- Spúšťa sa
carthage update --platform iOS. - Skompilované frameworky sa ručne pridávajú do Target > General > Frameworks, Libraries, and Embedded Content.
-
Swift Package Manager (SPM):
- Vstavaný správca závislostí v Xcode pre Swift.
- Centralizovaný prístup s použitím repozitárov balíkov.
- Používa
Package.swiftna opis závislostí. - Priamo integrovaný do Xcode.
- Pridanie závislostí cez File > Add Packages... alebo Project > Package Dependencies.
- Automatické riešenie a sťahovanie závislostí.
Porovnanie:
| Funkcia | CocoaPods | Carthage | Swift Package Manager (SPM) |
|---|---|---|---|
| Jazyk | Ruby | Swift | Swift |
| Inštalácia | gem install |
brew install |
Vstavané v Xcode |
| Konfiguračné súbory | Podfile, .podspec |
Cartfile | Package.swift |
| Typ závislostí | Zdrojový kód, binárne frameworky | Preferované binárne frameworky | Zdrojový kód |
| Integrácia s Xcode | Vytvára .xcworkspace |
Ručné pridanie frameworkov | Vstavané v Xcode |
| Decentralizácia | Áno | Áno | Áno |
| Centralizácia | Nie | Nie | Áno (cez repozitáre) |
Výber závisí od preferencií tímu, typu závislostí a potreby tesnej integrácie s Xcode. SPM sa stáva štandardom, najmä pre nové projekty na Swift.