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
Golang と Erlang
taiyow
8
1.9k
Piniaの現状と今後
waka292
5
1.5k
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
920
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
390
Synchronizationを支える技術
s_shimotori
1
150
Progressive Web Apps für Desktop und Mobile mit Angular (Hands-on)
christianliebel
PRO
0
110
Jakarta Concurrencyによる並行処理プログラミングの始め方 (JJUG CCC 2024 Fall)
tnagao7
1
230
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
870
外部システム連携先が10を超えるシステムでのアーキテクチャ設計・実装事例
kiwasaki
1
230
OpenTelemetryでRailsのパフォーマンス分析を始めてみよう(KoR2024)
ymtdzzz
4
1.6k
Java ジェネリクス入門 2024
nagise
0
610
Pinia Colada が実現するスマートな非同期処理
naokihaba
2
160
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
115
6.9k
Intergalactic Javascript Robots from Outer Space
tanoku
268
27k
Building Your Own Lightsaber
phodgson
102
6.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
32
1.8k
Visualization
eitanlees
144
15k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Statistics for Hackers
jakevdp
796
220k
Learning to Love Humans: Emotional Interface Design
aarron
272
40k
How STYLIGHT went responsive
nonsquared
95
5.2k
Music & Morning Musume
bryan
46
6.1k
Automating Front-end Workflow
addyosmani
1365
200k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
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.