SlideShare a Scribd company logo
1 of 24
Download to read offline
Carthageについて知りたいn個のこと
@ikesyo
関西モバイルアプリ研究会!#5,!2015(08(26!Wed
#関モバ
@ikesyo
!ikesyo_nnid
いけしょー/池田翔
京都でフリーランスのiOSエンジニア
(時々Android)しています
フリュー㈱のモバイル開発の
チームにジョイン中。
Reac%veCocoa/Carthageの
コミッター(Collaborator)やってます2✨
HimotokiというJSONデコーダーを作ってます+!
• GitHub
• SlideShare
今日はCarthageについて話します(!
CarthageCocoaプラットフォーム用の
分散型依存性管理ツール
名前の由来
• “パッケージ(Package)”と発音が似てるから(英語の発音はカー
セッジみたいな感じです),!
• [Ques1on],Why,name,Carthage?,:,Issue,#549
I,suggested,“Carthage,”,because,it’s,vaguely,like,“package”,with,
some,consonants,swapped,out.
—"Rob"Rix"(@robrix)
Cartfile
# Require version 2.3.1 or later
github "ReactiveCocoa/ReactiveCocoa" >= 2.3.1
# Require version 1.x
github "Mantle/Mantle" ~> 1.0 # (1.0 or later, but less than 2.0)
# Require exactly version 0.4.1
github "jspahrsummers/libextobjc" == 0.4.1
# Use the latest version
github "jspahrsummers/xcconfigs"
# Use the branch
github "jspahrsummers/xcconfigs" "branch"
# Use a project from GitHub Enterprise
github "https://enterprise.local/ghe/desktop/git-error-translations"
# Use a project from any arbitrary server, on the "development" branch
git "https://enterprise.local/desktop/git-error-translations2.git" "development"
# Use a local project
git "file:///directory/to/project" "branch"
Cartfile
• !"次のバージョンからGitHub"EnterpriseのリポジトリもGitHub
同様に扱えるようになります"!
• 実装しました"✨"Add"support"for"GitHub"Enterprise"by"ikesyo"
5"Pull"Request"#657
github "https://enterprise.local/ghe/desktop/git-error-translations"
Cartfile.private
テストターゲット用の依存性などFramework自体のビルドに必要
ないものはこちらに。
github "Quick/Quick" ~> 0.3.1
github "Quick/Nimble" "v1.0.0-rc.1"
github "AliSoftware/OHHTTPStubs" ~> 4.2.0
Cartfile.resolved
Gemfile.lockやPodfile.lockと同様のもの。リポジトリにコミットしましょう。
github "robrix/Box" "1.2.2"
github "Quick/Nimble" "v0.4.2"
github "jdhealy/PrettyColors" "v2.0.0"
github "Quick/Quick" "v0.3.1"
github "thoughtbot/Runes" "v2.0.0"
github "jspahrsummers/xcconfigs" "0.8.1"
github "Carthage/ReactiveTask" "0.7-beta.3"
github "antitypical/Result" "0.4.4"
github "Carthage/Commandant" "0.6.1"
github "ReactiveCocoa/ReactiveCocoa" "v3.0-RC.1"
github "thoughtbot/Argo" "v1.0.4"
Commands
carthage update
carthage bootstrap
carthage checkout
carthage build
carthage archive
carthage copy-frameworks
carthage(checkout
• --use-ssh:#チェックアウト時にHTTPSではなくSSHを使用する。
• --use-submodules:#依存プロジェクトをGitのサブモジュールとして追加する。#
• --no-use-binaries:#ビルド済みバイナリーのダウンロードをせず、必ずロー
カルでビルドさせる。
• --use-submodules#を指定してもこれを指定しないと、ビルド済みバイナリ
ーが使われてサブモジュールが使われないので要注意。
• 次のバージョンで変わります:#h,ps://github.com/Carthage/Carthage/pull/
692
carthage(update/bootstrap
• --configuration:#DebugやReleaseの指定。
• --platform:#ios,#mac,#watchosなどプラットフォーム指定。
今のところ1つだけ。
• --no-build:#Cartfile.resolvedの更新、チェックアウト
はするがビルドはしない。
• carthage checkoutのオプション一式
carthage(build
• --configuration
• --platform
• --no-skip-current:#依存ライブラリに加えて、(Cartfileを持
っている)自分自身のプロジェクトもビルドする。
carthage(archive
carthage build --no-skip-current
carthage archive YourFrameworkName
とすることで!YourFrameworkName.framework.zip!が生成さ
れるので、これをGitHub!Releaseに添付すればビルド済みバイナ
リーとして使ってくれるようになります。!!
carthage(copy,frameworks
• iOSで“Embedded+Binaries”に追加する代わりに使用するもの。
App+Storeへのサブミット時の不具合を回避するために必須。
• 不具合とは:+.frameworkにシミュレーター用バイナリーが含
まれていると申請できない。
• h<p://www.openradar.me/radar?id=6409498411401216
GitHubのアクセストークン
• ビルド済みバイナリーのダウンロードの関係でGitHub(APIを使用し
ている。
• その際に使用するアクセストークンを(GITHUB_ACCESS_TOKEN(環
境変数で指定できる。
• GITHUB_ACCESS_TOKEN=XXXXXXXXXXXXX carthage update
•
GITHUB_ACCESS_TOKEN="github.com=XXXXXXXXXXXXX,ent
erprise.local/ghe=YYYYYYYYY" carthage update
Universal*framework*target
• OS$X,$iOS,$watchOSのマルチプラットフォームを1つのターゲットでビルドで
きるターゲット設定。
• PRがマージされたので次のバージョンでビルドできるようになります。
• Support$universal$framework$targets.$by$neonichu$@$Pull$Request$#622
• こんなのが使えます
• hEps://github.com/mrackwitz/xcconfigs
• 豆知識:$この作者さんはCocoaPods$0.36でSwiO/Dynamic$Frameworkの対応
した人です。
!!快適なCarthageライフを
お過ごし下さい!"
Ques%ons❓
Thank&you❗"

More Related Content

What's hot

Process Monitor の使い方
Process Monitor の使い方Process Monitor の使い方
Process Monitor の使い方彰 村地
 
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...Shinji Takao
 
フロントエンドで GraphQLを使った所感
フロントエンドで GraphQLを使った所感フロントエンドで GraphQLを使った所感
フロントエンドで GraphQLを使った所感Chao Li
 
Kotlin/Native 「使ってみた」の一歩先へ
Kotlin/Native 「使ってみた」の一歩先へKotlin/Native 「使ってみた」の一歩先へ
Kotlin/Native 「使ってみた」の一歩先へTakaki Hoshikawa
 
Twitterのsnowflakeについて
TwitterのsnowflakeについてTwitterのsnowflakeについて
Twitterのsnowflakeについてmoai kids
 
JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用
JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用
JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用Akinori SAKATA
 
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_bootGrails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_bootToshiaki Maki
 
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugItsuki Kuroda
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話NipponAlgorithm
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021Hiroshi Tokumaru
 
今からでも遅くないSmalltalk入門
今からでも遅くないSmalltalk入門今からでも遅くないSmalltalk入門
今からでも遅くないSmalltalk入門Masashi Umezawa
 
Monacaを使ってアプリ開発ビジネスを加速させ、そして色々と苦労した話~
Monacaを使ってアプリ開発ビジネスを加速させ、そして色々と苦労した話~Monacaを使ってアプリ開発ビジネスを加速させ、そして色々と苦労した話~
Monacaを使ってアプリ開発ビジネスを加速させ、そして色々と苦労した話~Daisuke Yamashita
 
フィーチャモデルの描き方
フィーチャモデルの描き方フィーチャモデルの描き方
フィーチャモデルの描き方H Iseri
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけらAtsushi Nakamura
 
Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析Hiroaki Sengoku
 
アプリの鍵が消える時_Droid kaigi2018
アプリの鍵が消える時_Droid kaigi2018アプリの鍵が消える時_Droid kaigi2018
アプリの鍵が消える時_Droid kaigi2018ak_shio_555
 
XP祭り2019 B-6 アジャイルソフトウェア開発への統計的品質管理の応用
XP祭り2019 B-6 アジャイルソフトウェア開発への統計的品質管理の応用XP祭り2019 B-6 アジャイルソフトウェア開発への統計的品質管理の応用
XP祭り2019 B-6 アジャイルソフトウェア開発への統計的品質管理の応用Akinori SAKATA
 
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)NTT DATA Technology & Innovation
 

What's hot (20)

Process Monitor の使い方
Process Monitor の使い方Process Monitor の使い方
Process Monitor の使い方
 
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
 
フロントエンドで GraphQLを使った所感
フロントエンドで GraphQLを使った所感フロントエンドで GraphQLを使った所感
フロントエンドで GraphQLを使った所感
 
Kotlin/Native 「使ってみた」の一歩先へ
Kotlin/Native 「使ってみた」の一歩先へKotlin/Native 「使ってみた」の一歩先へ
Kotlin/Native 「使ってみた」の一歩先へ
 
Twitterのsnowflakeについて
TwitterのsnowflakeについてTwitterのsnowflakeについて
Twitterのsnowflakeについて
 
JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用
JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用
JaSST Tokyo 2022 アジャイルソフトウェア開発への統計的品質管理の応用
 
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_bootGrails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
 
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjug
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
 
今からでも遅くないSmalltalk入門
今からでも遅くないSmalltalk入門今からでも遅くないSmalltalk入門
今からでも遅くないSmalltalk入門
 
Monacaを使ってアプリ開発ビジネスを加速させ、そして色々と苦労した話~
Monacaを使ってアプリ開発ビジネスを加速させ、そして色々と苦労した話~Monacaを使ってアプリ開発ビジネスを加速させ、そして色々と苦労した話~
Monacaを使ってアプリ開発ビジネスを加速させ、そして色々と苦労した話~
 
OAuth 2.0のResource Serverの作り方
OAuth 2.0のResource Serverの作り方OAuth 2.0のResource Serverの作り方
OAuth 2.0のResource Serverの作り方
 
フィーチャモデルの描き方
フィーチャモデルの描き方フィーチャモデルの描き方
フィーチャモデルの描き方
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
 
Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析Pythonではじめるロケーションデータ解析
Pythonではじめるロケーションデータ解析
 
アプリの鍵が消える時_Droid kaigi2018
アプリの鍵が消える時_Droid kaigi2018アプリの鍵が消える時_Droid kaigi2018
アプリの鍵が消える時_Droid kaigi2018
 
XP祭り2019 B-6 アジャイルソフトウェア開発への統計的品質管理の応用
XP祭り2019 B-6 アジャイルソフトウェア開発への統計的品質管理の応用XP祭り2019 B-6 アジャイルソフトウェア開発への統計的品質管理の応用
XP祭り2019 B-6 アジャイルソフトウェア開発への統計的品質管理の応用
 
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)
 

Viewers also liked

How to handle bitcode
How to handle bitcodeHow to handle bitcode
How to handle bitcodeSyo Ikeda
 
iOSでのFramework導入のおさらい #関モバ
iOSでのFramework導入のおさらい #関モバiOSでのFramework導入のおさらい #関モバ
iOSでのFramework導入のおさらい #関モバSyo Ikeda
 
iOSアプリのライブラリ依存管理ツールとして Swift Package Managerを使うのは まだしばらく先かなと思った話
iOSアプリのライブラリ依存管理ツールとして Swift Package Managerを使うのは まだしばらく先かなと思った話iOSアプリのライブラリ依存管理ツールとして Swift Package Managerを使うのは まだしばらく先かなと思った話
iOSアプリのライブラリ依存管理ツールとして Swift Package Managerを使うのは まだしばらく先かなと思った話将之 小野
 
Android e2e testing at mercari
Android e2e testing at mercariAndroid e2e testing at mercari
Android e2e testing at mercariVishal Banthia
 
コードレビューをより良くする Danger x Android
コードレビューをより良くする Danger x Androidコードレビューをより良くする Danger x Android
コードレビューをより良くする Danger x AndroidToshiyuki Hirata
 
JUnit5とAndroidのテスト
JUnit5とAndroidのテストJUnit5とAndroidのテスト
JUnit5とAndroidのテストHiroshi Kikuchi
 

Viewers also liked (6)

How to handle bitcode
How to handle bitcodeHow to handle bitcode
How to handle bitcode
 
iOSでのFramework導入のおさらい #関モバ
iOSでのFramework導入のおさらい #関モバiOSでのFramework導入のおさらい #関モバ
iOSでのFramework導入のおさらい #関モバ
 
iOSアプリのライブラリ依存管理ツールとして Swift Package Managerを使うのは まだしばらく先かなと思った話
iOSアプリのライブラリ依存管理ツールとして Swift Package Managerを使うのは まだしばらく先かなと思った話iOSアプリのライブラリ依存管理ツールとして Swift Package Managerを使うのは まだしばらく先かなと思った話
iOSアプリのライブラリ依存管理ツールとして Swift Package Managerを使うのは まだしばらく先かなと思った話
 
Android e2e testing at mercari
Android e2e testing at mercariAndroid e2e testing at mercari
Android e2e testing at mercari
 
コードレビューをより良くする Danger x Android
コードレビューをより良くする Danger x Androidコードレビューをより良くする Danger x Android
コードレビューをより良くする Danger x Android
 
JUnit5とAndroidのテスト
JUnit5とAndroidのテストJUnit5とAndroidのテスト
JUnit5とAndroidのテスト
 

Similar to Carthageについて知りたいn個のこと

SwiftでAndroidアプリ書けるってよ
SwiftでAndroidアプリ書けるってよSwiftでAndroidアプリ書けるってよ
SwiftでAndroidアプリ書けるってよSyo Ikeda
 
Dynamic frameworks tips
Dynamic frameworks tipsDynamic frameworks tips
Dynamic frameworks tipsSyo Ikeda
 
Himotoki: A type-safe JSON decoding library #関モバ
Himotoki: A type-safe JSON decoding library #関モバHimotoki: A type-safe JSON decoding library #関モバ
Himotoki: A type-safe JSON decoding library #関モバSyo Ikeda
 
Next.js Storybook Driven Development
Next.js Storybook Driven DevelopmentNext.js Storybook Driven Development
Next.js Storybook Driven DevelopmentTakuya Tejima
 
アプリ開発の境界問題を支えるツール
アプリ開発の境界問題を支えるツールアプリ開発の境界問題を支えるツール
アプリ開発の境界問題を支えるツールKeishi Hosoba
 
GitHub Enterprise with GMO Pepabo
GitHub Enterprise with GMO PepaboGitHub Enterprise with GMO Pepabo
GitHub Enterprise with GMO PepaboHiroshi SHIBATA
 
20131210 QZSS Ideathon 2013
20131210 QZSS Ideathon 201320131210 QZSS Ideathon 2013
20131210 QZSS Ideathon 2013Taichi Furuhashi
 

Similar to Carthageについて知りたいn個のこと (7)

SwiftでAndroidアプリ書けるってよ
SwiftでAndroidアプリ書けるってよSwiftでAndroidアプリ書けるってよ
SwiftでAndroidアプリ書けるってよ
 
Dynamic frameworks tips
Dynamic frameworks tipsDynamic frameworks tips
Dynamic frameworks tips
 
Himotoki: A type-safe JSON decoding library #関モバ
Himotoki: A type-safe JSON decoding library #関モバHimotoki: A type-safe JSON decoding library #関モバ
Himotoki: A type-safe JSON decoding library #関モバ
 
Next.js Storybook Driven Development
Next.js Storybook Driven DevelopmentNext.js Storybook Driven Development
Next.js Storybook Driven Development
 
アプリ開発の境界問題を支えるツール
アプリ開発の境界問題を支えるツールアプリ開発の境界問題を支えるツール
アプリ開発の境界問題を支えるツール
 
GitHub Enterprise with GMO Pepabo
GitHub Enterprise with GMO PepaboGitHub Enterprise with GMO Pepabo
GitHub Enterprise with GMO Pepabo
 
20131210 QZSS Ideathon 2013
20131210 QZSS Ideathon 201320131210 QZSS Ideathon 2013
20131210 QZSS Ideathon 2013
 

More from Syo Ikeda

Xcode and iTC submission topics
Xcode and iTC submission topicsXcode and iTC submission topics
Xcode and iTC submission topicsSyo Ikeda
 
Swift 1.2からSwift 2への移行 #cocoa_kansai
Swift 1.2からSwift 2への移行 #cocoa_kansaiSwift 1.2からSwift 2への移行 #cocoa_kansai
Swift 1.2からSwift 2への移行 #cocoa_kansaiSyo Ikeda
 
ObjectMapperでJSONマッピング
ObjectMapperでJSONマッピングObjectMapperでJSONマッピング
ObjectMapperでJSONマッピングSyo Ikeda
 
var RAC3 = ReactiveCocoa + Swift @ ReactiveCocoa Tokyo #rac_tokyo 10/18
var RAC3 = ReactiveCocoa + Swift @ ReactiveCocoa Tokyo #rac_tokyo 10/18var RAC3 = ReactiveCocoa + Swift @ ReactiveCocoa Tokyo #rac_tokyo 10/18
var RAC3 = ReactiveCocoa + Swift @ ReactiveCocoa Tokyo #rac_tokyo 10/18Syo Ikeda
 
var RAC3 = ReactiveCocoa + Swift
var RAC3 = ReactiveCocoa + Swiftvar RAC3 = ReactiveCocoa + Swift
var RAC3 = ReactiveCocoa + SwiftSyo Ikeda
 

More from Syo Ikeda (6)

SwiftLint
SwiftLintSwiftLint
SwiftLint
 
Xcode and iTC submission topics
Xcode and iTC submission topicsXcode and iTC submission topics
Xcode and iTC submission topics
 
Swift 1.2からSwift 2への移行 #cocoa_kansai
Swift 1.2からSwift 2への移行 #cocoa_kansaiSwift 1.2からSwift 2への移行 #cocoa_kansai
Swift 1.2からSwift 2への移行 #cocoa_kansai
 
ObjectMapperでJSONマッピング
ObjectMapperでJSONマッピングObjectMapperでJSONマッピング
ObjectMapperでJSONマッピング
 
var RAC3 = ReactiveCocoa + Swift @ ReactiveCocoa Tokyo #rac_tokyo 10/18
var RAC3 = ReactiveCocoa + Swift @ ReactiveCocoa Tokyo #rac_tokyo 10/18var RAC3 = ReactiveCocoa + Swift @ ReactiveCocoa Tokyo #rac_tokyo 10/18
var RAC3 = ReactiveCocoa + Swift @ ReactiveCocoa Tokyo #rac_tokyo 10/18
 
var RAC3 = ReactiveCocoa + Swift
var RAC3 = ReactiveCocoa + Swiftvar RAC3 = ReactiveCocoa + Swift
var RAC3 = ReactiveCocoa + Swift
 

Carthageについて知りたいn個のこと