北海道勉強会_20140531

1,072 views

Published on

Introduction of Parse.com in Classmethod Dev.IO in Sapporo at 2014/05/31

Published in: Internet
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,072
On SlideShare
0
From Embeds
0
Number of Embeds
531
Actions
Shares
0
Downloads
5
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide
  • 単にデータを保存するだけなら、基本的にバックエンド側の動作コードは不要です。
    ただ、ちょっと複雑な処理とかしてみたくなります。
  • 単にデータを保存するだけなら、基本的にバックエンド側の動作コードは不要です。
    ただ、ちょっと複雑な処理とかしてみたくなります。
  • 単にデータを保存するだけなら、基本的にバックエンド側の動作コードは不要です。
    ただ、ちょっと複雑な処理とかしてみたくなります。
  • 単にデータを保存するだけなら、基本的にバックエンド側の動作コードは不要です。
    ただ、ちょっと複雑な処理とかしてみたくなります。
  • 単にデータを保存するだけなら、基本的にバックエンド側の動作コードは不要です。
    ただ、ちょっと複雑な処理とかしてみたくなります。
  • 単にデータを保存するだけなら、基本的にバックエンド側の動作コードは不要です。
    ただ、ちょっと複雑な処理とかしてみたくなります。
  • 北海道勉強会_20140531

    1. 1. 1Copylight © Classmethod, Inc. Parse入門 あなたのモバイル開発を超加速
    2. 2. 2Copylight © Classmethod, Inc. 自己紹介 • 小室啓 • クラスメソッドiPhoneアプリ・サービス 事業部 • Androidです!
    3. 3. 3Copylight © Classmethod, Inc. 自己紹介 • 小室啓 • クラスメソッドiPhoneアプリ・サービス 事業部 • Androidです!アウェー!
    4. 4. 4Copylight © Classmethod, Inc. アジェンダ • 紹介 • 入門 • 入門といいながら、速攻で終わるので紹 介多めです
    5. 5. 5Copylight © Classmethod, Inc. モバイルバックエンドの開発? • モバイルアプリケーションのバックエン ドの開発は結構面倒。
    6. 6. 6Copylight © Classmethod, Inc. モバイルバックエンドの開発? • どうやっていますか?
    7. 7. 7Copylight © Classmethod, Inc. 何が必要か? • 用意しなきゃいけないもの
    8. 8. 8Copylight © Classmethod, Inc. 物理サーバー
    9. 9. 9Copylight © Classmethod, Inc. Webサーバー (Apache, nginxとか)
    10. 10. 10Copylight © Classmethod, Inc. DBアクセスなどのロジックとか
    11. 11. 11Copylight © Classmethod, Inc. データストア(RDBMS? File?とか)
    12. 12. 12Copylight © Classmethod, Inc. スケールやらロードバランサやら とか
    13. 13. 13Copylight © Classmethod, Inc. こんなにある • ハードウェアの調達とかは面倒ですね。
    14. 14. 14Copylight © Classmethod, Inc. Cloudを使う? • ご存知の通り、Cloudを使えばハードウェ アの物理的制約から開放されます。 • さらに外部に公開するための準備なども 手軽に行えます。
    15. 15. 15Copylight © Classmethod, Inc. Google Cloud Platform Compute Engine https://cloud.google.com/products/compute-engine/
    16. 16. 16Copylight © Classmethod, Inc. Amazon Web Services http://aws.amazon.com/jp/ 他にも色々ありますが、代表的なところはこんなものでしょう。 例にAWSで作ってみるのを考えてみます
    17. 17. 17Copylight © Classmethod, Inc. AWSでやる? 1. サーバー(EC2?) 2. フロント(CloudFront?) 3. データストア (RDS?DynamoDB?) 4. ロードバランサ(ELB)
    18. 18. 18Copylight © Classmethod, Inc. AWSでやる? • 確かにハードウェアの制約などははずれ ましたが、まだまだ用意しなければなら ないものが大量にあります。 • あんまり準備する手間は変わらな い・・・? • まだまだモバイアプリ開発にとって、本 質的でない作業が大量に含まれています。
    19. 19. 19Copylight © Classmethod, Inc. 本質以外のことが多すぎる • サーバーにデータを保存したりする、モバイ ル・アプリはDBサーバーとか必須 • Android, iOSのプログラムを書く他に上のこ とも全てやらなきゃいけない? • なんでモバイルアプリを開発するのに – サーバープログラム書いてるんだろ・・・ – URL設定してるんだろ・・・
    20. 20. 20Copylight © Classmethod, Inc. 本質以外のことが多すぎる • サーバーにデータを保存したりする、モバイ ル・アプリは結局サーバーを全部用意しない といけません。 • Android、iOSのプログラムを書く他に上の ことも全てやらなきゃいけない? • なんでモバイルアプリを開発するのに • サーバープログラム書いてるんだろ・・・ • URLのルーティングとか設定してるんだ ろ・・・
    21. 21. 21Copylight © Classmethod, Inc. 本質以外のことが多すぎる • サーバーにデータを保存したりする、モバイ ル・アプリは結局サーバーを全部用意しない といけません。 • Android、iOSのプログラムを書く他に上の ことも全てやらなきゃいけない? • なんでモバイルアプリを開発するのに • サーバープログラム書いてるんだろ・・・ • URLのルーティングとか設定してるんだ ろ・・・ 自分はもっとUIやUXなど、ユーザーに触 れるモバイルアプリの本質的なところに工 数をかけたいんだ!
    22. 22. 22Copylight © Classmethod, Inc. Parse
    23. 23. 23Copylight © Classmethod, Inc. Parse • Parseとは、Parseが提供する【MBaaS】 です。 • 昨年あたりにFacebook社に買収されてま す。 • ググらビリティが低すぎて開発者泣かせ
    24. 24. 24Copylight © Classmethod, Inc. Parseの特徴 • モバイルのバックエンドを構築する環境を一 手にまとめて提供してくれるサービスです • Webホスティング • データストア • Social連携(Facebook, Twitter) • Push通知 • REST API • 各種Native開発用SDKの提供… and etc
    25. 25. 25Copylight © Classmethod, Inc. Parseの特徴 全部まとめてParseが 面倒みてくれます
    26. 26. 26Copylight © Classmethod, Inc. Parseの事例(世界)
    27. 27. 27Copylight © Classmethod, Inc. なぜParseを選択するのか • MBaaSの世界のにおいて、先駆者的な実 装になってる – 日本国内のMBaaSには、Nifty Cloudなどが ありますが、Parseのメソッドと同じ命名規 則になっていたり – 何かと共通するものが多い
    28. 28. 28Copylight © Classmethod, Inc. 多様なSDK • 各OSのNative開発SDKが提供されている こと – iOS, Windows Phone, Android, JS, Xamarin, Unityなどほぼ主要な言語を網羅し ています
    29. 29. 29Copylight © Classmethod, Inc. Social連携でのログイン機能を 簡単に実装 Twitter ログイン
    30. 30. 30Copylight © Classmethod, Inc. 強力なPush通知機能 • APNs, GCMなどOSごとのPush通知の仕 様は複雑怪奇な上、あまりにも実装が面 倒 • Amazon SNSなどを利用すればその辺も 面倒みてくれるかも?
    31. 31. 31Copylight © Classmethod, Inc. 強力なPush通知機能
    32. 32. 32Copylight © Classmethod, Inc. 強力なPush通知機能
    33. 33. 33Copylight © Classmethod, Inc. 強力なPush通知機能 • Amazon SNS以上に気軽なコンソールで準 備完了 • 設定項目これだけ。 • GCMは設定をONにするだけ!
    34. 34. 34Copylight © Classmethod, Inc. サーバサイド構築まで 5分かからない • データの定義さえすれば使える状態なの で、すぐ使えるよ • プロジェクト作成、データ定義だけで REST API経由とかSDKでCRUDできます
    35. 35. 35Copylight © Classmethod, Inc. サーバーサイドの動作も 比較的自由に変更できる • サーバーサイドプログラミングを少しだけやると、 容易に動作を拡張できます • プロジェクト作成、データ定義だけで、REST API経由でCRUDできます
    36. 36. 36Copylight © Classmethod, Inc. サーバーサイドの動作も 比較的自由に変更できる • サーバーサイドプログラミングを少しだけやると、 容易に動作を拡張できます • プロジェクト作成、データ定義だけで、REST API経由でCRUDできます いちおし!
    37. 37. 37Copylight © Classmethod, Inc. Analytics • リクエスト数やらPush通知の数とか 色々とカッコいいグラフにして表示し てくれます
    38. 38. 38Copylight © Classmethod, Inc. ダッシュボードのUIがCool
    39. 39. 39Copylight © Classmethod, Inc. バックエンド機能を拡張 Cloud Code • バックエンド拡張用のコードはJavaScript で記述 • SDKを提供 • 簡単なコマンドでdebugからdeployまで • Backbone Styleを踏襲 • 他JSライブラリの導入が楽
    40. 40. 40Copylight © Classmethod, Inc. Cloud CodeのSDK • Unix, Linux系OSであればコマンド一発で SDK導入 curl -s https://www.parse.com/downloads/cloud_code /installer.sh | sudo /bin/bash
    41. 41. 41Copylight © Classmethod, Inc. 基本コマンド • 作成したコードをDeploy • Remoteログを監視 • プロジェクト作成 $ parse deploy $ parse log -f $ parse new <AppName>
    42. 42. 42Copylight © Classmethod, Inc. Cloud Codeの特徴 • 各種カスタムFunctionはクロージャで定 義 • データのCRUDの前後(before, after)で Hookして実行するトリガFunction • 独自のAPIの口を定義できるカスタム Function
    43. 43. 43Copylight © Classmethod, Inc. トリガFunction • 処理を書けばParseが適当なタイミングで 勝手に実行してくれる
    44. 44. 44Copylight © Classmethod, Inc. トリガFunctionサンプル
    45. 45. 45Copylight © Classmethod, Inc. カスタムFunction • 呼び出し口を提供 • RESTの呼び出しはPOSTのみ • SDK内からの呼び出しは、専用のメソッ ドが準備されている
    46. 46. 46Copylight © Classmethod, Inc. カスタムFunctionサンプル
    47. 47. 47Copylight © Classmethod, Inc. Parseのここがよくないよ • 運営側のFAQがゆるふわ(適当) 質問者「これをやるとこんなエラーが出るんだけど」 運営「これをやれば解決するぜ!」 _人人人人人人人人_ > 解決しない! <  ̄Y^Y^Y^Y^Y^Y^Y ̄
    48. 48. 48Copylight © Classmethod, Inc. Parseのここがよくないよ • StackOverflowもゆるふわ 「こんな問題が発生したんだけど、誰か解決方法知らないかい?」 「俺も同じ問題が発生したぜ」「俺も」「俺も」
    49. 49. 49Copylight © Classmethod, Inc. つかってみる • プロジェクトをつくります!
    50. 50. 50Copylight © Classmethod, Inc. つかってみる • データを定義します
    51. 51. 51Copylight © Classmethod, Inc. つかってみる • おわりです! • あとは、SDKとかREST APIでアクセスす るだけ https://api.parse.com/1/classes/<ClassName>
    52. 52. 52Copylight © Classmethod, Inc. つくってます • Open Othello API
    53. 53. 53Copylight © Classmethod, Inc. まとめ • ConsoleのUIがかっこいいので使いたくな る • モバイル・アプリに必要なサービスが全 てこれで事足りる • 使いはじめるのは超簡単 • Cloud Code萌え
    54. 54. 54Copylight © Classmethod, Inc. ありがとうございました

    ×