PHP フレームワークで Smarty テンプレートを使用する必要がありますか?
Java 開発でテンプレートを使用することは、Java Web 開発スタックでの JSP を嫌う人が多くいますが、JSF は常に間違った時期に導入され、一度も使用されていないように感じられます。 。 Java Web サイト開発チュートリアルでは、SSH、Struts の 2 つの主要なフレームワークには Velocity が推奨され、Spring には freemarker が推奨されます。フロントエンド言語のJavaScriptでも様々なテンプレートエンジンが登場しています。
?
PHP の軽量フレームワーク CodeIgniter では、次のように明確に述べられています。
注: ビュー ファイルで純粋な PHP を使用する方が速いため、CodeIgniter ではこのクラスを使用する必要はありません。ただし、開発者の中には、PHP の使用が難しいデザイナーと作業する場合に、テンプレート エンジンの使用を好む人もいます。
?
テンプレートはフレームワーク開発の新しい方向性ですか? Smarty を使用する場合でも、独自の手書きテンプレートを作成するか、フレームワークに付属しているテンプレートを使用する必要があります。
?
私の開発者の多くは、「CI のテンプレートを使えばいいだけです。CI のテンプレート手法は非常に素晴らしいと思います。」と考えています。
?
「テンプレートは自分で書きましょう!」。
?
これらの開発者は主にパフォーマンスを考慮して、テンプレートを使用すべきではないと考える人もいます。
?
「最もパフォーマンスの高いテンプレートは、テンプレートを使用せずに直接エコーすることです。」
?
ただし、テンプレートを使用すると必ずしもパフォーマンスが低下するわけではありません。「HTML を直接生成します。大規模なプロジェクトの場合は、HTML を生成する必要があります。」
?
テンプレートの標準ユーザーは別の理由も挙げています:
?
「この変更はテンプレート デザイナーには影響せず、コンテンツは引き続きテンプレートに正確に出力されます。同様に、ある日アーティストがやりすぎてインターフェースを完全にやり直したい場合でも、プログラム ロジックには影響しません」これは Smarty マニュアルに記載されています。テンプレートには独自の利点もあります。コードのロジックとページが明確です。」
?
テンプレートについて不満を言う人もいます。テンプレートを使用すると、無駄なコードがたくさん書かれるように感じます。実際、機能を実装するコードであれば便利です。
?
最後に、プログラマに捧げる対句です:
?
最初の行: システムのために生き、フレームワークのために死に、デバッグのために一生戦いますか?
2 行目: 記号に苦しみ、大文字と小文字に騙され、最後には需要に耐えられなくなります。 ?
香港バッチ: ダメなプログラマー。