Upgrade to Pro — share decks privately, control downloads, hide ads and more …

20090314 スマートフォン勉強会@関西#2「Windows MobileとWebAPI」

20090314 スマートフォン勉強会@関西#2「Windows MobileとWebAPI」

スマートフォン勉強会(すまべん)#2 でお披露目しました。

Kenji Wada

March 14, 2009
Tweet

More Decks by Kenji Wada

Other Decks in Technology

Transcript

  1. 自己紹介 • CH3COOH( 酢酸 ) です • ハンドルネームの由来 – 本名候補で選外になった「作太郎」が元ネタ

    – ネットでは「さく」で活動していましたが、 皆が「さくさん」と呼ぶので「 CH3COOH 」に改名 – 呼びにくいと怒られて「(酢酸)」を追加してみた • 使ってるメインスマートフォン – EMONSTER ( S11HT )一筋です。 – 最近 Android が動くようになりました^q^
  2. WebAPI ってどんなのがあるの? • 日本国内の WebAPI をざっくりと調べてみた • 海外の WebAPI は

    programmableweb.com で調べると便利かもしれませんよ Yahoo! 検索 Yahoo! カテゴリ Yahoo! オークション Yahoo! ミュージック Yahoo! 地図情報 Yahoo! ウィジェット 楽天商品検索 API 楽天ジャンル検索 API 楽天商品コード検索 API 楽天書籍検索 API 楽天 CD 検索 API 楽天 DVD 検索 API 楽天カタログ検索 API 楽天トラベル施設情報 API 楽天トラベル空室検索 API 楽天トラベル地区コード API じゃらん Web サービス じゃらん宿表示 API エリア検索 API 温泉検索 API 価格 .com WEB サービス 価格 .com 食べログ .com 4travel.jp カーセンサーラボ .net メーカーリスト 中古車検索 カタログ検索 マッシュアップコンテスト 2006 RECRUIT 物件検索 API フォト蔵 API( β版 ) ホットペッパーサービス イースト辞書 SimpleAPI はてなウェブサービス 人力検索はてな はてなアンテナ はてなブックマーク はてなダイアリー はてなフォトライフ はてなグループ はてな検索 はてな exist API Auto-Discovery Hatena XML Namespace etcetc…
  3. WebAPI を超簡単に説明してみます 「『すまべんを』含む Web サイトを検索してください」 とリクエスト ( 要求 ) を送ります

    http://smartphone01... http://smartphone02... ですよと、レスポンス ( 応答 ) を返します データ データ コンテンツ 提供 サーバ データ
  4. REST • 通信プロトコルを定義したものですが、 同じ REST でも意味が異なる場合があります – Fielding の REST

    原則に従う「 RESTful 」な Web サービスシステム – 簡易な XML+HTTP インターフェイスを採用した システム • ここでは後者の意味で REST 形式の WebAPI を紹介します
  5. • クエリ文字列は「 ? 」で始まり、名前 = 値を「 & 」で連結 したものです。 WebAPI

    の URL の末尾に付与します Yahoo! 検索 API を使ってみました (REST 形式 ) http://search.yahooapis.jp/ WebSearchService/V1/webSearch? appid=V7yofucvaUq1zaYm uN23p14-&query= すまべん
  6. Atom API • Atom とは以下の幾つかの仕様の総称 – コンテンツを配信する為の XML フォーマット –

    コンテンツの編集する為の通信プロトコル • 仕様標準化組織の IETF に移管された後は AtomPub と呼ばれています • ここでは Blog への投稿や、コンテンツの編集 を行う通信プロトコルのお話しです
  7. ここから Windows Mobile のお話 • Windows Mobile には .NET CF(

    Compact Framework) が搭載されています • CF アプリの利点 – ASP.NET Web Service を利用する事が可能 – 複雑なコーディング無しで普通のクラスのメソッド を呼ぶ感覚で、 WebAPI を使う事が出来ます
  8. ASP.NET Web Service の使い方 • Web 参照を追加します • 呼び元 –

    Dim service As New SearchService() Dim result = service.Search(“ すまべん ”)
  9. Windows Mobile と Web Service • 僕は C# より VB.NET

    派です – 今までリリースしている WM 用アプリは VB.NET で書いてます . • Web Service は VB で書く事が可能です • 同じコードが動くのならば CF アプリの コードを Web Service に移植可能では? – CF → ASP.NET は難しいかもしれない – ASP.NET → CF なら殆ど大丈夫です
  10. Windows Mobile VS Web Service • 0 ~ 2000 個の素数を求めるのに掛る時間を

    求めてみようと思います • 素数は 1 と自分の数でしか割ることの出来な い孤独な数字で、私に勇気を与えてくれます • さて、計測した環境は下記の通り – 端末は EMONSTER – 回線は 3G 接続と無線 LAN – ASP.NET サーバは ActiveWeb(1G- 共有 )
  11. 戦いの結果 … • 通信速度、端末や Windows Server の性能、アルゴリズム等、 様々な要素に依存するので一概に言えませんが (…… と前書きしておいて

    ) • CF で処理させるよりも Web Service を 使った方が早いケース事が判りました • ただ通信には電波を飛ばす必要があり、 その分バッテリーの消費も早いです • Web Service を簡単使えるので 適所適材を考え、お互いのメリットを 活かせば魅力的なアプリを作る事ができるかも