Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Yet another Dependency Manager
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Piet Brauer
January 08, 2015
Programming
170
0
Share
Yet another Dependency Manager
Held at the local Cocoaheads Hamburg
Piet Brauer
January 08, 2015
More Decks by Piet Brauer
See All by Piet Brauer
Designing Pro Apps @ FrenchKit 2016
pietbrauer
0
750
The Future Of Computing
pietbrauer
0
75
DevOps in the iOS world
pietbrauer
0
410
FBSnapshotTestCase
pietbrauer
1
280
Modular iOS App @ UIKonf 2014
pietbrauer
7
280
Scaling iOS Development
pietbrauer
1
100
Modular iOS Apps
pietbrauer
2
350
Unit Testing
pietbrauer
1
88
Other Decks in Programming
See All in Programming
inferと仲良くなる10分間
ryokatsuse
1
270
AIエージェントの隔離技術の徹底比較
kawayu
0
440
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
460
さぁV100、メモリをお食べ・・・
nilpe
0
100
ふつうのFeature Flag実践入門
irof
6
3.2k
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
900
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
1.4k
[KCD Czech] eBPF Meets the GPU: Future of AI Infra Observability
doniacld
0
110
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
1.3k
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
380
net-httpのHTTP/2対応について
naruse
0
180
CLIであることを活かしたGitHub Copilot CLI活用術 / GitHub Copilot CLI Pro Tips & Tricks
nao_mk2
1
1.1k
Featured
See All Featured
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
520
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.5k
It's Worth the Effort
3n
188
29k
AI: The stuff that nobody shows you
jnunemaker
PRO
7
660
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
200
Designing for Performance
lara
611
70k
How to Ace a Technical Interview
jacobian
281
24k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
210
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
120
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
160
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2k
Transcript
Yet another Dependency manager by the creator of @AirportQuiz
Cocoapods • since 17/9/2011 • originally created by @alloy •
written in ruby • currently 7499 packages published
Carthage • since 18/11/2014 • created by jspahrsummers • written
in Swift • theoretically every Xcode project can be a package
Cocoapods Installation gem install cocoapods
Carthage installation brew install carthage
Providing a package (Cocoapods edition) • build your project •
specify a podspec (easy ruby syntax) • push it to trunk • new authentication system • pushes it to Github specs repository
Providing a package (Carthage edition) • build your project •
define dependencies (if any) in a Cartfile (custom DSL) • provide a Xcode project that builds a framework
Integrating other projects into yours (Cocoapods) • Write it down
in Podfile • pod "NBNRealmBrowser", '~> 0.2.0' • pod install • Cocoapods will download dependencies and integrate them into your project
Integrate other projects into yours (Carthage) • Write down in
Cartfile • github "NBNPhotoChooser" ~> 0.2.0 • carthage update • integrate the built .frameworks yourself
Upsides Cocoapods • well done dev toolset around dependencies •
Cocoadocs • project bootstrapping • widely adopted and supported • no integration pain
Upsides Carthage • new and fresh • not another language
to know • feels more natural for iOS developers
Downsides Cocoapods • modifies your project and you have to
use a Xcode workspace • written in Ruby
Downsides Carthage • pretty new • adoption is not as
widely as with cocoapods • integration is still a small pain • iOS 8 only
Conclusion This page intentionally left blank.