Skip to content

Instantly share code, notes, and snippets.

@tokuhirom

tokuhirom/gfx.md Secret

Last active August 29, 2015 14:07
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tokuhirom/61f5e20cf759706ca3c9 to your computer and use it in GitHub Desktop.
Save tokuhirom/61f5e20cf759706ca3c9 to your computer and use it in GitHub Desktop.
HAML考

本稿では HAML のメリット・デメリットについて考える。

メリット

  • ロジックのネスト構造とテンプレートのネスト構造が一体化
  • 短く書ける

デメリット

  • 廃れる可能性
  • 廃れた時に変換がめんどい
  • 最悪 erb に変換できるよ。たぶん。
  • Slim の台頭
    • HAML マーケティング頑張っていこう
  • HTMLスニペットを貼るのがだるい
  • 諦めろ
  • 引き継ぎ時に嫌がられる可能性
  • なんとかしよう
  • HAML書けるデザイナーがいない
  • 転職しろ
  • % とかはいってるのがださい
  • Slim 使え。

テンプレートエンジンの分類

埋め込み型

Text::MicroTemplate, erb, erubis, PHP 等

  • プログラムを直接実行できるので自由度が高い。
  • テンプレートを変更する人が任意のコードを実行できてしまう
  • 一般に、高速
  • 実装が簡単

文字列展開型

Smarty, Template-Toolkit, Xslate, mustache 等

  • 一般に高速
  • 汎用性が高い
  • 記述可能なことが制限されることによるかきやすさ

HTML生成型

HAML, Slim 等

  • HTML を短くかける
  • ベースのHTML部分もこれに制限されるので、嫌がられる可能性もある
  • 一般に高速
  • HAML は式部分を eval している
  • HTML 以外には使えない

XML 型

Thymeleaf, Genshi 等

<ol py:if="links"> のように書くタイプ

  • 一般に低速
  • valid な HTML を書く必要がある
  • HTML 以外には使えない
  • エスケープについて考えなくてもよい
  • 文字列ベースなら融通きくのになあ、みたいなケースはまあある

S式

S式最高!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment