これはかなり気に入った。
(ノ・・)ン。。。。。。(((●コロコロッ
私はテンプレートエンジンには並々ならぬこだわりを持っている。
それは
PHPをやっているころから変わっていない。
テンプレートとして利用する際、
必須と思っていることがある。
それは、
テンプレートはすべてHTML(xhtml, xml)に準拠する
個々のパーツに至るまでHTML記述されており、
CSSもキチンと通ってWYSIWYGエディタの表示も崩れず、
誰が見ても読めるものを初めてテンプレートと呼ぶ。
至極どうでもいいと思われるかもしれないが、
私はテンプレートはプログラミングする場所ではないと思っているので、
ここが最も重要なところになる。
よく「テンプレートエンジンはシンプルで速いもの」という記述をよく見かけるが、
シンプルなエンジンというのは得てしてプログラマ寄りに出来ており、
初回作成は簡単で済むがメンテナンスが極端に出来なくなることの方が多い。
PHPにはSmartyというメジャーなテンプレートエンジンがあるが
HTML_Template_Flexyや
PHPTalといったメジャーでないもの使っているのはそのためだ。
Pythonのメジャーなテンプレートエンジンがなにかはよく知らないが、
Cheetahや
Mako、
Mightyを使った限りではSmartyのそれと同じ。
Genshiは後発のテンプレートエンジン。
kidというエンジンの機能を載せて軽くしたもの。
XMLベースのテンプレートで見た目を崩さずにページを作ることが出来る。
TurboGearsや
Pylonsといったフレームワークでの利用可能。
今後の主力として使っていこうと思う。
Genshiをフレームワークで利用しようとした時に、
基本レイアウト構成をどうするか結構悩んだ。
悩んであれこれしてたらWikiにドキュメントが溜まったので公開しようかと。
[More:]