SlideShare a Scribd company logo
Plannahの開発環境と
DeployGateの紹介
株式会社ミクシィ
イノベーションセンター
衣川憲治
自己紹介
• 衣川憲治(k_kinukawa)
• 2010年11月〜
• mixi for iPhone, iPad
• Plannah(3月末でクローズ)
• 4月よりDeployGateチームに所属
Plannahとは
• みんなで作る、思い出アル
バムアプリ
• 3月末でクローズしました。
チーム
• マーケティング、ディレクション(1名)
• デザイン、UI/UX(1名)
• アプリ、サーバー、インフラ、開発全般(衣川)
一人で開発しなければならない!
あなたならどうする?
ローンチまでの期間:3ヶ月
一番最初に、CI環境を整えよう
継続的インテグレーション(CI)
• ビルド、テストを継続的に実行する。
– 短いサイクル
– 自動化
• 高速に石橋を叩きながら開発を進める
開発
ビルド
テスト リリース
Jenkins
• ビルド、テストの自動
化
• アプリ配信の自動化
• メトリクスの自動取得
Github
• ソースコード管理
• issue管理
• コードレビュー
DeployGate
• アプリのリモート配信
サービス
• iOS対応しました
NOMADO
• 超便利なコマンドラインツール群
• shenzhenで、コマンドラインから一発ipaファイ
ル作成
• あとでデモします。
組み合わせると...
ソースコード
くれ!
ビルド・テスト
しろ!
アーカイブ作ってみ
んなに配れ!
配信!
Github
Xcode
DeployGate
チーム
プッシュ、レビュー、
マージ!
組み合わせると...
• Githubにpushしたら自動で
– ビルド
– テスト
– 自動配信
• メンバーは常に最新のビルドを使い倒す
• 少ない人数でも効率的な検証環境を整えて
おく。
便利なライブラリを有効活用しよう
CocoaPods
• ライブラリ管理のための必須ツール
• 導入のための設定も自動で行ってくれる
• 自作ライブラリも使える
CocoaPodsで導入したライブラリ
• AFNetworking
• MTStatusBarOverlay
• UICKeyChainStore
• ZXing
• QR-Code-Encoder-for-Objective-C
• EGOTableViewPullRefresh
• Kiwi
• OCMoc
• Nocilla
お勧めライブラリ
UICKeyChainStore
• NSUserDefaultのように、シンプルにKeyChain
のデータを操作できる。
[UICKeyChainStore setData:data forKey:kKeychainKey]; //セーブ
NSData *data = [UICKeyChainStore dataForKey:kKeychainKey]; //ロード
ZXing
• QRコードリーダー
– 見た目のカスタマイズ可能
– 高速
• (ZXingObjCは...)
– Apatch License 2.0
• (ZBarはGNU LGPL 2.1)
• QR-Code-Encoder-for-Objective-CでQRコード生成
EGOTableViewPullRefresh
• 引っ張り更新ライブラリ
• カスタマイズ可能
– 結構遊べる
• カスタマイズしたものをgithubに公開しました
Kiwi
• RSpecライクなBDDフレームワーク
• 内部的にOCUnit/XCTest使っている
– cmd+Uが使える
– Xcode5からSPEC単位で実行できる
• 導入も簡単
– http://qiita.com/k_kinukawa/items/710a1e209e1
bbb9713f6
CRToast
• ステータスバー、ナビゲーションバー上に表
示されるトースト通知ライブラリ
• iOS7っぽい
• PlannahではMTStatusBarOverlayを使っていた
が、次使うならこっち使いたい
GoogleAnalytics
• リアルタイム解析
– Push砲を打つと面白い
• ビューの表示解析
– ViewControllerの親クラスのViewDidLoadに以下
の一行を入れておく
[[GAI sharedInstance].defaultTracker trackView:NSStringFromClass([self class])];
その他
• CocoaPodsを使って簡単ライブラリ導入
• ManiacDev.comおすすめ
mBaaSを有効活用しよう
• モバイルアプリのためのバックエンドサービス
– ストレージ
– プッシュ通知
– ユーザー管理
• SNS連携
• Objective-Cの簡単なAPIで使える
• API設計が素敵
• 無料で結構使える
• Plannahでは、プッシュ通知だけParse.comを
利用
– 必要な機能だけ利用できる
• 趣味の開発でも積極的に利用
まとめ
• 最初にCI環境を作ってしまおう
• CocoaPodsを使って、便利なライブラリを活用
しよう
• mBaaSを有効活用しよう
• DeployGateを使おう

More Related Content

What's hot (20)

PDF
20151126 cookpad talk_test_engineer
Kazuaki Matsuo
 
PDF
SEゼミ2015 - OSS Hack Weekend - 1日目のまとめ
Kouhei Sutou
 
PDF
チーム開発をスムーズにするために何ができるか
Takafumi Ikeda
 
PDF
Dev love kansai
Takafumi Ikeda
 
PPTX
Jenkinsを使ったコンシューマゲームでのデプロイとテスト
Hiroyuki Tanaka
 
PDF
アジャイル入門
Kenji Morita
 
PDF
GCS2013 リーンソフトウェア開発から見るゲーム開発7つのムダ
Hiroyuki Tanaka
 
PDF
老舗大企業からスタートアップへの挑戦
GuildWorks
 
PPTX
Sphinxの環境構築が再現できない問題をDockerで解決してみた
Study Group by SciencePark Corp.
 
PDF
CEDEC2015講演 チーム開発をスムーズにするために
Takafumi Ikeda
 
PDF
アジャイルコーチが現場で学んだプロダクトオーナーの実際と勘所 POの二番目に大事なことと
Yasui Tsutomu
 
PDF
オープンソースによるイノベーションの継続
Takayuki Miyauchi
 
PDF
U1w共有会 21/10/09
yousan1
 
PDF
小さな会社(チーム)で クールなアプリをつくる方法 Gunosy UI Design Study #1
佐藤 俊太郎
 
PPTX
ビルド職人頼みの自社製品リリースを、CI可能にした取り組み
Study Group by SciencePark Corp.
 
PDF
ヤフーオープンローカルプラットフォームの設計思想
Yahoo!デベロッパーネットワーク
 
PDF
Think.next
Makoto Kato
 
PPTX
Windowsアプリ開発の実務で使うUnitTest
keitasudo1
 
PDF
connpass特徴と開発の流れ
Ikeda Yosuke
 
PPTX
20150926 uwpストア攻略
Makoto Nishimura
 
20151126 cookpad talk_test_engineer
Kazuaki Matsuo
 
SEゼミ2015 - OSS Hack Weekend - 1日目のまとめ
Kouhei Sutou
 
チーム開発をスムーズにするために何ができるか
Takafumi Ikeda
 
Dev love kansai
Takafumi Ikeda
 
Jenkinsを使ったコンシューマゲームでのデプロイとテスト
Hiroyuki Tanaka
 
アジャイル入門
Kenji Morita
 
GCS2013 リーンソフトウェア開発から見るゲーム開発7つのムダ
Hiroyuki Tanaka
 
老舗大企業からスタートアップへの挑戦
GuildWorks
 
Sphinxの環境構築が再現できない問題をDockerで解決してみた
Study Group by SciencePark Corp.
 
CEDEC2015講演 チーム開発をスムーズにするために
Takafumi Ikeda
 
アジャイルコーチが現場で学んだプロダクトオーナーの実際と勘所 POの二番目に大事なことと
Yasui Tsutomu
 
オープンソースによるイノベーションの継続
Takayuki Miyauchi
 
U1w共有会 21/10/09
yousan1
 
小さな会社(チーム)で クールなアプリをつくる方法 Gunosy UI Design Study #1
佐藤 俊太郎
 
ビルド職人頼みの自社製品リリースを、CI可能にした取り組み
Study Group by SciencePark Corp.
 
ヤフーオープンローカルプラットフォームの設計思想
Yahoo!デベロッパーネットワーク
 
Think.next
Makoto Kato
 
Windowsアプリ開発の実務で使うUnitTest
keitasudo1
 
connpass特徴と開発の流れ
Ikeda Yosuke
 
20150926 uwpストア攻略
Makoto Nishimura
 

Viewers also liked (20)

PDF
1人でも頑張れる!Retty式開発環境
Yoichiro Sakurai
 
PDF
Vasily i os-20140403
Yusuke Arai
 
PDF
ユニットテスト初学者がKiwiFramework非同期テストで失敗した
Yuichi Adachi
 
PDF
Yahoo vs ClassMethod_battle5_iBeacon
Yasuhisa Arakawa
 
PDF
”iOSアプリ開発の先に何があるのか” ヤフー VS クラスメソッド iOS炎の7番勝負 #7
Takeshi Fukasawa
 
PDF
チームを加速させるRetty式開発術
Yoichiro Sakurai
 
PDF
Xcodeプラグインで快適な開発ライフを
Yuki Hirai
 
PDF
サービスを成長させる為の開発について
tatsuya mazaki
 
PDF
いままで使ってきた携帯電話
Ippei Ogiwara
 
PPT
Hadoopの紹介
bigt23
 
PDF
Javaone報告会
Munenori Hirakawa
 
PDF
20131209_buildinsidermeetup
kumake
 
PDF
New Objective-C Features for Swift 2.0
Goichi Hirakawa
 
PDF
CEDEC 2013 - 徹底的にチューンしたハイブリッドアプリ「D.O.T. Defender of Texel」の制作
Nobutaka Takushima
 
PDF
2014.11.12 ibm bluemix pdf
Yuichiro Maki
 
PDF
Cocos2d-xの深層〜Cocos2d-x組み込みによるピュアAndroid/iOSアプリの外科手術的統合
Ryuichi Kubuki
 
PPTX
【登壇資料】人類総インターネット時代に20代を無駄にしないために
Junichi Akagawa
 
PDF
Cross2013_DeNA
Takeshi Kaise
 
PDF
PHP at Yahoo! JAPAN
Ippei Ogiwara
 
PDF
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集
yuki0211s
 
1人でも頑張れる!Retty式開発環境
Yoichiro Sakurai
 
Vasily i os-20140403
Yusuke Arai
 
ユニットテスト初学者がKiwiFramework非同期テストで失敗した
Yuichi Adachi
 
Yahoo vs ClassMethod_battle5_iBeacon
Yasuhisa Arakawa
 
”iOSアプリ開発の先に何があるのか” ヤフー VS クラスメソッド iOS炎の7番勝負 #7
Takeshi Fukasawa
 
チームを加速させるRetty式開発術
Yoichiro Sakurai
 
Xcodeプラグインで快適な開発ライフを
Yuki Hirai
 
サービスを成長させる為の開発について
tatsuya mazaki
 
いままで使ってきた携帯電話
Ippei Ogiwara
 
Hadoopの紹介
bigt23
 
Javaone報告会
Munenori Hirakawa
 
20131209_buildinsidermeetup
kumake
 
New Objective-C Features for Swift 2.0
Goichi Hirakawa
 
CEDEC 2013 - 徹底的にチューンしたハイブリッドアプリ「D.O.T. Defender of Texel」の制作
Nobutaka Takushima
 
2014.11.12 ibm bluemix pdf
Yuichiro Maki
 
Cocos2d-xの深層〜Cocos2d-x組み込みによるピュアAndroid/iOSアプリの外科手術的統合
Ryuichi Kubuki
 
【登壇資料】人類総インターネット時代に20代を無駄にしないために
Junichi Akagawa
 
Cross2013_DeNA
Takeshi Kaise
 
PHP at Yahoo! JAPAN
Ippei Ogiwara
 
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集
yuki0211s
 
Ad

Recently uploaded (9)

PPTX
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
PDF
第三世代 ウェザーステーションキット v3 ー WSC3-L 日本語カタログ
CRI Japan, Inc.
 
PDF
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
PPTX
2025_7_25_吉祥寺_設計ナイト_ADR運用におけるデータ利活用の考え方.pptx
ssuserfcafd1
 
PDF
VMUG Japan book vsan 20250515 CPU/Memory vSAN
Kazuhiro Sota
 
PDF
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
PDF
LoRaWAN ウェザーステーションキット v3 -WSC3-L 日本語ユーザーマニュアル
CRI Japan, Inc.
 
PDF
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
PDF
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
第三世代 ウェザーステーションキット v3 ー WSC3-L 日本語カタログ
CRI Japan, Inc.
 
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
2025_7_25_吉祥寺_設計ナイト_ADR運用におけるデータ利活用の考え方.pptx
ssuserfcafd1
 
VMUG Japan book vsan 20250515 CPU/Memory vSAN
Kazuhiro Sota
 
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
LoRaWAN ウェザーステーションキット v3 -WSC3-L 日本語ユーザーマニュアル
CRI Japan, Inc.
 
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
Ad

Plannahプロジェクトの開発環境とdeploy gateの紹介