このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

micro* (3):microapplications

本編「micro* (3):microapplications」のコピー。

出かける準備で早起きしました。あわただしいので中途半端な記述ですが、micro*シリーズその3(の断片)を投稿してから出発します

マイクロアプリケーション(microapplication)とは、とりあえずはマイクロ文書を扱うプログラムだと定義できます。しかし、OS上で直接動くネイティブアプリケーションやサーバサイドWebアプリケーションではなくて、ブラウザー上(クライアントサイド)で動作するJavaScriptプログラムです。

マイクロアプリケーションのソフトウェアとしての特徴は:

  • 実行環境:Webブラウザ
  • 実装言語:JavaScript
  • 画面表示:ブラウザのHTMLレンダリング機能を使う
  • イベント:ブラウザが生成するイベントをJavaScriptのハンドラーで処理
  • データ入出力:文書の一部をデータとみなすか、XMLHttpによるリモートIO

Ajaxにより再発見・再認識されたXMLHttpコンポネントは、マイクロアプリケーションに対して、ブラウザのとのIO手段を与えます。その他は、特に目新しいことはありませんが、マイクロアプリケーションは次のような意図を持っています。

  1. マイクロ文書に対する対話的フロントエンドを提供する。したがって、広義の(microformats.orgで策定されたものにかぎらない)マイクロフォーマットに関係する。
  2. お手軽さを失わない範囲で、再利用/共有可能性、相互運用性を意識する。
  3. (上の項の一部だが)できるならば表示先が何であるか(bodyかdivか、windowかframeかiframeかなど)に独立な作りにする。
  4. これらの目的のために、“あるコンベンション”に従う。

広義のマイクロフォーマットで記述されたマイクロ文書というデータに、マイクロアプリケーションが対話的振る舞いを与える、という構図です。

問題は、「あるコンベンション」がどうあるべきか/どう決めるか、ですが、それを今後提案できればと思っています。いずれにしても、microなコンベンションですから、最小限の規則集であり、非制限的なものです。コンベンションに沿ったマイクロアプリケーションをサポートするフレームワークがあれば便利でしょうが、フレームワーク必須にすると制限的になってしまうので好ましくありません。

もっと詳しいことは、またいずれ。