« ジェームスボンドが絶対言わなそうなこと | メイン | やる夫で学ぶ著作権問題がおもしろい »



ExtJSとGoogleGears

ExtJSとGoogleGearsをはてなブックマークに追加 ExtJSとGoogleGearsをdel.icio.usに追加  Yahoo!ブックマークに登録 ExtJSとGoogleGearsをGoogle Bookmarksに追加 ExtJSとGoogleGearsをtwitterにポスト
simpleTasks.PNG

ExtJSのサンプルの中にSimpleTasksというものがあって、どんなもんなんだろうと使ってみようとしましたら、なにやらGoogleGearsなるものをインストールせよというページに飛びました。なるほど。さっそくインストールしてみる。なんだろこれ。

で、インストールしてSimpleTasksのサンプルを開いてみると、「このサイトはGoogleGearsを要求しています。許可しますか?」みたいなことを聞かれるので許可する。苦しゅうない。良きにはからえ。すると、SimpleTasksが開いていろいろといじくれるようになりました。やったー。でもなんだこれ。ToDoListみたいなものでしょうか。自分のタスクスケジュール管理ツールみたいなサンプルですね。へー。ふーん。すごいなー(棒読み)(見れたら興味がうせてしまいました。)

googleGearsPop.PNG

で、GoogleGearsってなによ?

<GoogleGearsについて調べてみたよ>


というわけで調べてみましたら、ITproでGoogleGearsでサンプル・アプリケーションを作るという内容のページを見つけました。非常にわかりやすいです。
簡単に言うと「オフラインでもウェブアプリケーションが使える」ってことらしいです。ですがオフラインで使うってことは、当然のことながら扱うデータはローカルに持たなければなりません。

例えば、ウェブメールを書いている途中に飼い猫がつまづいてLAN線を引っこ抜いてネットに接続できなくなったとします。するとテキストエリアに残っている文章をサーバ側に保存・送信できなくなりますので、下手に保存や送信ボタンなどを押してしまった場合、「ページを表示できません。」というページが見せられ、今まで書いていた文章がなくなってしまうことがあります。(もちろんそういうことが無いようにウェブメールなどのアプリケーションでは、非同期で文章を途中保存するリクエストが裏で走ってたりすることが多いです)GoogleGearsをうまく利用すれば、そのようなデータ消失の可能性を限りなく防ぐことができそうです。また、ローカルのデータベース(SQLite)にデータ格納することでページ遷移時にもちまわるデータの幅も大きく広がっていきそうです。

では、GoogleGearsをインストールしたのち、Google Gears Database Demoをみてみます。
なにやら入力フィールドがあって、ここに文字を入力してOKを押すとYour last three phrases were: のところに入力した文字が表示されます。こ、これだけ?

これだけではなんのことやらわかりません。ではブラウザを閉じるなり、どこかのページに移動するなりして再度開いてみてください。ご自身が入力した文字が表示されているではありませんか。す、すごー。。。くはないなぁ。うん。そんなすごくない。あははは

つまり、これだけの機能に限って言えば、クッキーを利用するなり、サーバ側でデータ保存をするなりで実現できます。しかしながらクッキーには有効期限というものがあったり、クリアすれば簡単に消えてしまいます。そして、サーバ側の保存ではクライアントの識別を行ってからサーバに保存するためログインなどの処理が必要となってきます。どんなデータを、「誰が」保存したかをサーバ側で知らないといけないためです。GoogleGearsのサンプルページではログイン認証も行っていませんし、クッキーを削除してもページにデータが残っています。

なるほど。つまりOKボタンを押下したときにローカルに明示的にデータを保存したわけですね。ブラウザキャッシュやクッキーとは別に以下の独立したデータベースに格納されているようです。デモページを表示する際はそこからデータを取り出して表示するということでしょうか。

C:\Documents and Settings\ユーザ名\Local Settings\Application Data\Google

これなら、ローカルにアプリケーション(スクリプト)とデータベースを保持しているので、実装依存で処理を完結することができますね。

じゃあどんなシーンで使えるの?ってところがやはり気になるところですが、ExtJSと組み合わせてパッと浮かぶ所でいうとウェブDesktopでしょうか。ExtJSにはリッチテキストエリアやカスタムGridも持っていますので、ワープロや簡易的なスプレッドシートを置いておくことができますね。サーバ側でバージョンとパーミッション管理を行えば複数ユーザでウェブデスクトップが共有できるかな。でもそんなに使い道ないですね。wikiやみんなのまとめサイトを構築すればそれなりに使えるかなぁ。派手ではないけど、オンラインオフラインをまたいで安心してつかえるってことはものすごい便利なことですし、ウェブアプリケーションを構築する上であたりまえなことになるのかもしれませんね。

via : さんのとこでGoogleGearsデータベースの基礎というわかりやすいエントリがポストされていましたので参考にしました。

★このコンテンツに目的の情報はありませんでしたか?


[ 最近のエントリーとその関連エントリー ]


[ スポンサードリンク ]

トラックバック

このエントリーのトラックバックURL:
http://mojalog.com/cgi/mt/mt-tb.cgi/217

コメントを投稿

ツリータイプ・カテゴリー

open all | close all

リファラから検索


サイト内検索