Entry

テキトウメモ - プアクライアントという考え方

2007年08月29日

ウェブアプリケーションが会社や組織・団体といったローカルなシステムでも動き始めている今日この頃,開発が楽になる一方で,これまでになかった余計なことを考慮に入れないといけないことがたまにあったりします。

例えば,セッションの途中で backspace を押されちゃったらどうするの?とか,F5 を押された時にも排他を取れてますか?とか,変テコな URL リクエストはありませんか?とか……。こういうのは,クライアントアプリ(ブラウザ)の問題なわけで,ウェブアプリケーションに特有の問題なんだと思います。ウェブアプリの場合,フールプルーフを考えるのがえらく大変なわけで,こういったあれこれを,ウェブアプリ側で毎度のように面倒を見るのはバカバカしく思えます。

もちろん,これは mixi とかはてなとかいった「本当に WWW を使ったシステム」とは,話が違います。mixi では F5 を嫌がるかもしれないけれど,ブラウザは mixi だけのためにあるわけじゃないからです。けど,ローカルなウェブサーバ(アプリケーションサーバ)で,中の人しか使わないようなシステムを作る場合,「戻る」や「再読込み」といった機能は,むしろ邪魔な機能だと思ったりするわけです。機能的に見て,HTTP プロトコルを話せて,HTML のレンダラと JavaScript,それにせいぜい ActiveX,Flash,PDF くらいがクライアント側の機能にあれば,ウェブアプリの要件を充たすんじゃないでしょうか。「戻る」や「進む」のボタンもなければ,ブックマーク機能もない。URL の入力もできないし,履歴表示の機能もない。でも,きっと普通に動くはず。

というわけで,そういうクライアントがあれば,ブラウザ競争云々とは別の次元で,勝負になるんじゃないかと思うんです(何の勝負だ?)。つまり,ローカルウェブアプリ専用のブラウザというわけです。機能縮小がウリなので,リッチクライアントに対してプアクライアントとでも呼んだらいいでしょうか(本来のリッチクライアントとは意味が違うんだけど)。

どういうところに使うのか,もう少し具体的に考えると,例えば,図書館の貸し出しシステムや蔵書検索システムなんかは,ネットに繋ぐ必要がありませんよね。また,街中の道案内や観光案内システムといった,不特定多数が使うシステムも,ブラウザ固有の機能をユーザにいぢらせたくありません。そんなところに置くクライアントアプリに,プアクライアントが活躍しそうです。

サーバ側では,HTTP リクエストの User-Agent あたりを見ることにして,IE や Firefox といった WWW 向けのブラウザからの接続はブロックします(気休めだけど)。規格を統一して,HTTP の上乗せプロトコルにでもしておけば,便利に使えそうな気がします。

もちろん,だからといって,開発そのものが楽になるわけじゃないとは思うんですけどね……まぁ,そんなことをつらつらと思ったのでした。

Trackback
Trackback URL:
Ads
About
Search This Site
Ads
Categories
Recent Entries
Log Archive
Syndicate This Site
Info.
クリエイティブ・コモンズ・ライセンス
Movable Type 3.36
Valid XHTML 1.1!
Valid CSS!
ブログタイムズ

© 2003-2012 AIAN