 
 
  
          第22回 iPhoneのAjax戦略、そして今日もWeb APIは増加する
          
      
        株式会社ピーデー 
        川俣 晶
2007/6/22
 そのほかの見どころ
 そのほかの見どころ
Ajaxとそれに関連する話題を紹介します。
■ 多様化し充実するWeb API群
Webアプリの大幅パワーアップの立役者ともいえるAPIの充実度が高まってきています。ここでは、いくつか例を出してみました。ミーティングプラス貸し会議室APIサービスは貸し会議室を検索するAPIを提供していますが、これはコラボレーションソフトの一部として使うと便利そうです。例えば、ミーティングを招集する場合、各人の都合の擦り合わせと並行して、会議室の確保を行うようなシステムも可能でしょう。
|  | 
| ミーティングプラス | 
貸し会議室APIはビジネス向きの例ですが、逆にMaidcafeAPIは趣味性の高いAPIといえます。これははやりのメイドカフェを検索するAPIを提供します。
最後の日本語形態素解析Webサービスは、上記の2つとはやや異質です。形態素解析とは、文章を単語に分けて構造を把握する技術ですが、これは検索エンジンでは重要な意味を持つ技術です。文章を正しく単語に分けられなければ、正しい単語で検索を行うことができないからです。つまり、Yahoo!が持つ検索エンジンの底辺技術をちらりと見せてくれる……というのがこのWebサービス(API)の面白いところでしょう。
|  | 
| Yahoo!の日本語形態素解析Webサービス | 
■ 驚くほど多数のWeb APIをマッシュアップ
いまやマッシュアップの事例は珍しくありません。その中でも、特にこのサイトが注意を引いたのは、使用しているAPIの種類の多さです。トップページ下部を見ると、以下のような驚くほど多い数が並んでいます。
- Google AJAX Search API
- じゃらんWebサービス
- ホットペッパー Webサービス
- 楽天トラベルAPI
- カーセンサーラボWebサービス
- OK TellMe BETA 検索API
- castella-API
- 食べログ レストランAPI
- ぐるなび Webサービス
- 4travel 旅行記検索API
- MaidcafeAPI
- yoyaQ ホテルプラン情報取得API
- Youtube API
- Weather Hacks
|  | 
| クネルア -食う寝る遊ぶ総合情報サイト- | 
さて、過去に筆者は、何回か“Webサービス(API)の多用は性能、信頼性、可用性を低下させる悪い選択である”と書いてきました。では、このクネルアは悪い選択を行っているのでしょうか?
どうやら、そうではないようです。実際にアクセスしてみると、ページは素早く表示され、性能が低いという印象はありません。これは、システムの構造をうまく工夫しているためでしょう。おそらく、ページを表示するごとにいちいち多くのAPIを呼び出してデータを集めてはいないと思います。すでに取得したデータを上手に使い回して、全体の負荷を軽くしているのでしょう。
こういうやり方は「あり」だということを強調するために、紹介しておきます。
■ Yahoo! JAPAN - WEB API コンテストの受賞作品発表
Yahoo! JAPAN - WEB API コンテストの受賞作品が公開されています。こちらも要チェックでしょう。
|  | 
| Yahoo! JAPAN - WEB API コンテスト | 
■ ブログの世界もAjaxへ
ブログの元祖ともいうべきソフト、Movable Typeがバージョンアップします。「ブログうきうきWatch」ではないこの記事で、なぜこれを取り上げるのかというと、ユーザーインターフェイスを、Ajaxを用いた新UIに刷新したという記述が目を引いたためです。
|  | 
| Movable TypeでAjaxが使われるサンプル画面(Movable Typeのサイトより引用) | 
かつて、ブログとは驚くほど簡単に更新できるサイトを構築する手段として登場しました。しかし、Ajax時代になって、多くのサイトの使い勝手が向上する中で、ブログの操作感がイマイチ見劣りするケースがあったのは否定できない現状でしょう。それを補ってパワーアップしたブログの世界が、どのような新しい価値を生み出すのか、ブロガーの皆さんの活躍に期待しましょう。
■ 地図ではないGoogle Mapsの使い方
Google Mapsといえば、地図を提供するサービスです。しかし、Google Mapsの機能を用いて、地図ではない画像を表示させることもできます。
|  | 
| The Google Maps Image Cutterを使って札幌の風景画像を操作するデモページ(赤い丸線で囲んだ部分にGoogle Mapのナビゲーションが見える) | 
しかし、なぜ単に画像を表示させないでGoogle Mapsを使うのでしょうか? その理由は、Google Mapsが巨大な画像データを扱う優れたユーザーインターフェイスだからです。拡大縮小も自由にできるし、スクロールもマウスのドラッグで容易にできます。それによって、画面を大きくはみ出すような大きな画像データも容易に閲覧可能となります。そして、何より良いことは、多くのユーザーが慣れ親しんだGoogle Mapsの操作感をそのまま使えることです。新しく、使い方を習得する必要がありません。
■ Webブラウザ上のシェルとvi
技術系の話題です。Jashは、何とブックマークレットとしてWebブラウザ上で起動可能なコマンドラインのシェルです。インストールの手間もブックマークレットとして登録するだけ。どのページを閲覧中も容易に起動できます。それでいて、半透明ウィンドウまで実現するしゃれた技術力まで見せてくれます。しかも、これだけやっていてFirefoxオンリーかと思いきやクロスブラウザで、IE7上でも動いています。どのブラウザでも動くことは、Firebugなどにはない大きな価値といえますね。
|  | 
| JavaScript Shellのサンプル画面(Jash: JavaScript Shellのサイトより引用) | 
もう1つのviは、もちろんUNIXとUNIX like OSs(Linuxなど)をコマンドラインで使うユーザーにはおなじみの、あのviをWebブラウザ上で実現したものです。Webブラウザ上であるにもかかわらず、hjklキーでカーソルが動き、iキーで文字を挿入できるのはなかなかの感動ものでした。ちなみに、筆者はviをそれほど深く使い込んでいるわけではありませんが、Emacs派かvi派かといえば、vi派です。
■@IT関連記事
|  | 80年代のAppleに学ぶUIの部品化とガイドライン インタラクションデザインパターン(1) インタラクションデザインパターンの原則や秩序の歴史を見てみよう。20年前のAppleはどのようにして質の高い開発を目指していたか  「リッチクライアント & 帳票」フ ォーラム 2007/2/7 | |
|  | 調べもの専用Googleブラウザを作ってみよう Webアプリケーション+αのカスタムブラウザの作り方 Googleで検索を行ったときに、その検索語を記録していく機能を持った「調べもの専用ブラウザ」 の作り方を説明する  「リッチクライアント & 帳票」フ ォーラム 2006/12/7 | |
|  | なぜiPhoneは日本で使えないの? 連載:5分でネットがわかるシリーズ(9) 日本では使えないというAppleの携帯電話「iPhone」。日本と各国の携帯電話の通信規格とそのなぞについて解明してみましょう 「Master of IP   Network」フォーラム 2007/2/26 | |
|  | プログラマならWeb   APIという巨人の力を使っちゃえ! 連載:5分でネットがわかるシリーズ(10) アイデアとテクニックがあれば個人でも強力なWebサービスを生み出せる。Web APIの魅力とその仕組みを5分で説明します 「Master of IP   Network」フォーラム 2007/3/13 | |
|  | スゴイFlash地図マッシュアップとRIAの御三家 連載:Flash観測所(3) ついにそろい踏みしたRIAの御三家。時代を制するのは果たしてどこなのか!? さらに、Flashを使った地図マッシュアップをいくつか紹介する 「リッチクライアント & 帳票」フ ォーラム 2007/6/5 | |
|  | 2/2 | 
| INDEX | ||
| 第22回 iPhoneのAjax戦略、そして今日もWeb APIは増加する | ||
| Page1 Ajaxに突き進むAppleの新戦略/加速するWebOSとWebオフィスの世界/Google Mashup EditorとGoogle Gears | ||
|   | Page2<そのほかのみどころ> 多様化し充実するWeb API群/驚くほど多数のWeb APIをマッシュアップ/Yahoo! JAPAN - WEB API コンテストの受賞作品発表/ブログの世界もAjaxへ/地図ではないGoogle Mapsの使い方/Webブラウザ上のシェルとvi | |
- GASで棒、円、折れ線など各種グラフを作成、変更、削除するための基本 (2017/7/12)
 資料を作る際に、「グラフ」は必要不可欠な存在だ。今回は、「グラフの新規作成」「グラフの変更」「グラフの削除」について解説する
- GET/POSTでフォームから送信された値をPHPで受け取る「定義済みの変数」【更新】 (2017/7/10)
 HTMLのフォーム機能についておさらいし、get/postメソッドなどの内容を連想配列で格納するPHPの「定義済みの変数」の中身や、フォーム送信値の取り扱いにおける注意点について解説します【PHP 7.1含め2017年の情報に合うように更新】
- PHPのfor文&ループ脱出のbreak/スキップのcontinue【更新】 (2017/6/26)
 素数判定のロジックからbreak文やcontinue文の利点と使い方を解説。for文を使ったループ処理の基本とwhile文との違い、無限ループなども併せて紹介します【PHP 7.1含め2017年の情報に合うように更新】
- Spreadsheetデータの選択、削除、挿入、コピー、移動、ソート (2017/6/12)
 Spreadsheetデータの選択、挿入、削除、コピー、移動、ソートに使うメソッドの使い方などを解説する
|  | |
| 
 | |
|  | 

 







