mchainはHTML5のWeb SQL DatabaseにおいてjQuery風にメソッドチェーンを使えるようにするライブラリ。

mchainはHTML5/JavaScript製のオープンソース・ソフトウェア。HTML5はこれまでのWebアプリケーションのあり方を大きく変える可能性があると思っている。その一つとして期待しているのがWeb SQL Databaseだ。Webブラウザ内でRDBMSが利用できる技術だ。


デモのTodoアプリ

これをうまく使えば、最初に必要なデータをダウンロードして後はクライアントサイドだけで加工して完了したらアップしてもらうような仕組みが作れるようになる。そんな面白い技術を手軽に扱えるようにするJavaScriptライブラリがmchainだ。

mchainは基本的にWeb SQL Database APIをmchainでラッピングしているだけで使い方は変わらない。変わっているのはチェーンメソッドが使えるということだ。まるでjQueryのように.でつないで(チェーンで)メソッドを記述できる。そして最後に.commit()で実際に処理が実行される仕組みだ。


実際のコード

RailsでのDBアクセスやjQueryを使って開発している時にチェーンメソッドの便利さを感じているので、Web SQL Database APIでも同様に記述できると処理や見た目がとてもスムーズになる。さらにcommit()を記述するまでは実行されないのも良い。対応ブラウザはChrome/Safari、そしてiOSやAndroidのモバイルWebKitとなっている。

MOONGIFTはこう見る

クライアントサイドで処理させるようにすればサーバでの負荷はゼロだ。さらにクライアント側でも反応が高速になる分、ユーザビリティが向上する。クライアントPCの性能が向上する中、Web化によってマシンパワーが過剰になりはじめている。今後はこのような分散化する考え方が必要になるだろう。

そのために必要なのがデータを保存しておく仕組みであり、データベースだ。JavaScriptはソースコードがそのまま見えてしまうため、セキュリティへの配慮は必要だが今後のWebシステム開発を考える上で重要な要素なのは間違いない。mchainのようなライブラリもどんどん登場してくることだろう。

HTML5 Web Database 用ライブラリ作りました - くじらぶろぐD

mchain - JavaScript Library for HTML5 Web Database - Google Project Hosting