初期のテンプレートエンジン(1990年代前半)
編集
- 1993年:CGI(Common Gateway Interface)の登場
- Perlを使用した動的ページ生成が一般的に
- HTMLにプログラムコードを埋め込む手法が始まる
- 1994年:SSI(Server Side Includes)
- Apache HTTPサーバーで導入
- 静的HTMLに簡単な動的コンテンツを挿入可能に
- 1994年:Personal Home Page Tools(PHP)の登場
- Rasmus Lerdorfが開発
- HTMLに直接埋め込めるスクリプト言語として人気に
- 後のテンプレートエンジンに大きな影響を与える
Web開発の進化期(1990年代後半〜2000年代前半)
編集
- 1996年:ASP(Active Server Pages)
- Microsoftによる動的Webページ技術
- VBScriptやJScriptを使用
- 1999年:JSP(JavaServer Pages)
- Java言語からのWebページ生成
- サーブレットベースのアーキテクチャ
- 2000年:Velocity(Apache)
- Javaベースの本格的テンプレートエンジン
- ビジネスロジックとプレゼンテーションの分離を促進
- 2000年:FreeMarker
- Javaプラットフォーム向けテンプレートエンジン
- 強力な機能と柔軟性を提供
モダンテンプレートエンジンの登場(2000年代中期)
編集
- 2004年:ERB(Embedded Ruby)
- Rubyに標準搭載されたテンプレートエンジン
- シンプルな構文で高い表現力
- 2006年:HAML
- HTMLの代替構文として登場
- インデントベースの簡潔な記法を導入
- 2006年:Smarty 2.0
- PHPベースの高機能テンプレートエンジン
- キャッシュ機能の強化
- 2008年:Liquid
- Shopifyによって開発
- セキュリティを重視した設計
- 2009年:Mustache
- ロジックレスなテンプレートエンジンの先駆け
- 多言語対応の仕様を確立
- 2010年:Handlebars.js
- Mustacheを拡張
- より強力なヘルパー機能を導入
- 2011年:Jade(後のPug)
- Node.js向けテンプレートエンジン
- インデントベースの構文
- 2011年:Twig
- Symfonyフレームワーク向けに開発
- PHP環境での高機能テンプレートエンジン
現代のテンプレートエンジン(2015年以降)
編集
- 2013年:JSX(React)
- JavaScriptにXML/HTMLライクな構文を導入
- コンポーネントベースの開発を促進
- 2016年:Vue.jsテンプレート
- リアクティブな更新機能
- 単一ファイルコンポーネント
- 2019年:Svelte
- タグベース → インデントベース
- 埋め込み型 → 分離型
- 静的 → 動的/リアクティブ
- 単純な置換 → インテリジェントなコンパイル
- 文字列操作 → DOMベース処理
- 同期処理 → 非同期レンダリング
- 自動エスケープ機能の標準化
- サンドボックス化
- XSS対策の強化
- MVCアーキテクチャの普及
- コンポーネント指向の台頭
- マイクロフロントエンドの促進
- WebAssemblyとの統合
- AIによる最適化
- エッジコンピューティングへの対応
- ロジックの分離
- コンポーネント化
- リアクティブプログラミング
- 仮想DOM
- インクリメンタルDOM
- サーバーサイドレンダリング