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
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
76
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
360
Unit Testing
pietbrauer
1
88
Other Decks in Programming
See All in Programming
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
240
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.1k
Oxlintのカスタムルールの現況
syumai
5
980
AI駆動開発勉強会 広島支部 第一回勉強会 AI駆動開発概要とワークショップ
hayatoshimiu
0
440
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
570
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
480
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
250
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
3.2k
Moments When Things Go Wrong
aurimas
3
140
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
1.5k
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
480
AIエージェントの隔離技術の徹底比較
kawayu
0
460
Featured
See All Featured
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
590
4 Signs Your Business is Dying
shpigford
187
22k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Building Adaptive Systems
keathley
44
3k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
How to Think Like a Performance Engineer
csswizardry
28
2.6k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
400
Skip the Path - Find Your Career Trail
mkilby
1
140
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
210
Practical Orchestrator
shlominoach
191
11k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
200
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.