1 以下、名無しにかわりましてVIPがお送りします 2010/08/11(水) 20:19:41.65 ID:TtmKjfqa0
1 以下、名無しにかわりましてVIPがお送りします 2010/08/11(水) 20:19:41.65 ID:TtmKjfqa0
最近Xslateの自動エスケープ機能について考えていたのですが、これは「この機能によって安全性が高まる」というものではなく(結果的にそうでないものより安全ではありますが)、むしろテンプレートエンジンとしてはこれこそ正しい振る舞いなのではないかと思うに至りました。 この「値を渡すと、ソースコードに埋め込む際に適当に加工する」という振る舞いは、SQLとプレースホルダの振る舞いがまさにそうです。SQLに値を埋め込む際、アプリケーションでいちいち値をエスケープするというのは危険であり、避けるべきです。可能であれば常にプレースホルダを使うという方針をとるだけで、エスケープ問題について余計なことを考える必要はなくなります。 テンプレートエンジンについても同じこと。テンプレートに値を埋め込む時は、そのまま渡せばいいのです。これを手動で行わせるのは、プレースホルダに埋め込む値のエスケープの有無をユーザーに
速いエラーメッセージがとても親切型ベースの自動エスケープ複数シンタックス対応TTerse という TT2 like なシンタックスをサポートしているので TT からの移行がわりと容易Text::Xslate->new(module => ['File::Spec::Function']) のように書くだけで簡単にモジュールの関数をとりこむことができるText::Xslate::Bridge::TT2Like をつかうことで TT の VMethods や Filters をつかえるPure Perl でもうごくというような特徴があるので、よほどの理由がないかぎり今後は Xslate をつかうのが正解なのではないかとおもっている。 実装の小ささや、こまわりのきく点などで Text::MicroTemplate は生き残っていくとおもうが、基本的には Perl5 のテンプレートエンジンは Xs
でInconsolataだけが紹介されているので、おまけ情報を少々。 Inconsolataというのは、Windows Vista/7 に標準で付属しているConsolasフォントに感銘を受けた作者がConsolasを意識して作ったフォントです。 ConsolasのほうはVista/7だけでなく、Visual Studioに付属してたりもします。一応、こちらからダウンロードもできるようです。 Download: Consolas Font Pack - Microsoft Download Center - Download Details Windows(少なくとも7では)ではConsolasのほうがより(ClearTypeの効きが)綺麗だと思います。というか、InconsolataはWindowsだとどうも今一つ…、ただMacやLinuxではWindowsでのConsolasと同じくら
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く