注目!サーバサイドからjQueryを使ってDOM操作「nodeQuery」
nodeQueryはnode.js用のサーバサイドjQueryで、サーバサイドでクライアントサイドのDOMを変更できたりします。
node.jsでjQueryライブラリを読み込むと、jQueryが提供するメソッドを使えますが、さらに一歩進めたのがnodeQueryです。サーバサイドからクライアントサイドの描画を変更できたりしてとても面白い実装ができます。
まずサンプルのブログです。普通に表示されているのが分かります。
サーバサイドです。node.jsのスクリプトの中でHTMLタグを出力しているのが分かります。構文にjQueryが使われているのも分かります。
時間が更新されるデモです。サーバサイドの時間であるのがミソです。
nodeQueryを使うとサーバサイドとクライアントサイドの区別がなくなったようなコーディングができるようになります。Socket.ioを使っているので表示は高速に、後からコンテンツを描画していくという手法がとれます。新感覚のプログラミング手法と言えるかも知れません。
nodeQueryはnode.js/JavaScript製、MIT Licenseのオープンソース・ソフトウェアです。
MOONGIFTはこう見る
nodeQueryの手法はHerokuが提供しているFacebookアプリのサンプルに似ています。一般的にWeb APIを使う部分はネットワークを利用する分遅延しがちです。それをSocket.ioを使うことで遅延実行させるという方法です。これはうまいと唸ってしまうくらいです。コードはこちらにあります。
さらにjQueryを使うことでクライアントに描画されているHTMLに対して直接(のように)変更が加えられます。考えを適切に分けないとごちゃごちゃしたプログラミングになりそうな気配もしますが、うまく使うと面白いソフトウェアが作れそうです。