Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

6,753 views

Published on

Published in: Technology
  • Be the first to comment

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

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

×