Smartyで慣れた記法が使えるJavaScript製レンダリングエンジン「Jarty」
JartyはSmartyライクな構文のJavaScript向けテンプレートエンジン。
JartyはJavaScript製のオープンソース・ソフトウェア。Webシステムを開発する際に、HTMLなどのフロントエンドとサーバサイドは分業になることが多い。PHPを使って開発している際によく使われるのがSmartyだ。システムとデザインの中間言語的な立ち位置でいてくれる。
サンプル
従来はそれで十分だったが、Ajaxが多用されWebアプリケーションを開発しようと思うとフロント部分でもHTMLとJavaScriptの分業が必要になる。そこで使えるのがJartyだ。
JartyはSmartyのJavaScript版だ。scriptタグの中でtype=“text/jarty"を使ってテンプレートを定義する。その中はほぼ素のHTMLで、Smartyライクな構文が利用できる。そして変換に利用するデータはJSONで定義されたシンプルなものを利用する。
コード
それによって文字列の置換や繰り返しの処理を行うことができる。jQueryとの併用もできるので、既存のWebサイトに組み込むのも容易そうだ。Ajaxを徹底的に使ったWebアプリケーション開発の際には強力なツールになるのではないだろうか。
MOONGIFTはこう見る
JavaScript向けのテンプレートエンジンはまだあまり多くはない。そのため誰でも新規参入し、デファクトを取れる可能性があるのが実情だ。Jartyもその一つになるだろう。Smartyと似せているので使い始めやすいという人は多いはずだ。
個人的に必要だと思うのは、オブジェクトとレンダリング結果が同期されていることだと思っている。JavaScriptの場合、リアルタイムにレンダリング結果が書き変わっていくような動作が求められるからだ。HTMLを出力しておしまい、というレンダリングエンジンでは求めるニーズと合っていない可能性があるだろう。