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
0
150
Yet another Dependency Manager
Held at the local Cocoaheads Hamburg
Piet Brauer
January 08, 2015
Tweet
Share
More Decks by Piet Brauer
See All by Piet Brauer
Designing Pro Apps @ FrenchKit 2016
pietbrauer
0
660
The Future Of Computing
pietbrauer
0
44
DevOps in the iOS world
pietbrauer
0
370
FBSnapshotTestCase
pietbrauer
1
260
Modular iOS App @ UIKonf 2014
pietbrauer
7
260
Scaling iOS Development
pietbrauer
1
79
Modular iOS Apps
pietbrauer
2
330
Unit Testing
pietbrauer
1
68
Other Decks in Programming
See All in Programming
Honoの来た道とこれから
yusukebe
19
3k
外部システム連携先が10を超えるシステムでのアーキテクチャ設計・実装事例
kiwasaki
1
230
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
7
2.8k
Vue SFCのtemplateでTypeScriptの型を活用しよう
tsukkee
3
1.5k
生成 AI を活用した toitta 切片分類機能の裏側 / Inside toitta's AI-Based Factoid Clustering
pokutuna
0
580
詳細解説! ArrayListの仕組みと実装
yujisoftware
0
480
推し活としてのrails new/oshikatsu_ha_iizo
sakahukamaki
3
1.7k
C#/.NETのこれまでのふりかえり
tomokusaba
1
160
僕がつくった48個のWebサービス達
yusukebe
18
17k
Identifying User Idenity
moro
6
7.9k
[PyCon Korea 2024 Keynote] 커뮤니티와 파이썬, 그리고 우리
beomi
0
110
Server Driven Compose With Firebase
skydoves
0
400
Featured
See All Featured
Designing the Hi-DPI Web
ddemaree
280
34k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
290
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
What's in a price? How to price your products and services
michaelherold
243
12k
What's new in Ruby 2.0
geeforr
342
31k
Designing Experiences People Love
moore
138
23k
The Invisible Side of Design
smashingmag
297
50k
Adopting Sorbet at Scale
ufuk
73
9k
How STYLIGHT went responsive
nonsquared
95
5.2k
A Modern Web Designer's Workflow
chriscoyier
692
190k
Building Better People: How to give real-time feedback that sticks.
wjessup
363
19k
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.