全3回「WebプログラミングPHP言語入門」。

第3回。“MVC”と“Smarty”と“デバッグ”とか。


PHPの場合、いわゆる大規模サイト*1での、HTMLテンプレートの扱いがどうなってるのか、が実はギモンだったんですが*2、これで理解できました。Smartyですか。なるほど。納得。

でもねー、元々、テンプレートが不要だった、PHPでテンプレートエンジン、なんて。そりゃー自己否定なんじゃないかとゆー新たなギモンが。HTMLテンプレートを分けるんなら、自分だったら、Perlで自前のテンプレートエンジン*3を使うぞと。

でも、分かった気もします。きっと、PerlCGIだと、パフォーマンス上問題があるんでしょうねー、まあ、それは分かります。だって、プロセスが上がりまくるんだもの。で、自分ならmod_perl使いますが。きっと、世間一般では、mod_perlは扱いにくいとされてるんでしょうねー、まあ、それは分かります。だって、デバッグしにくいんだもの。Perlのメモリコンテキストをリセットするために、ついApacheを再起動したくなるし。

あ〜、それで世間では、PHPとかJavaなんですねー、で、JavaだとStrutsとかですか。あ〜、どっちか選べって言われたら、どっちもイヤだな〜、だって、PHPは言語仕様が中途半端だから、テンプレートを別途用意するほどの規模のモノには使いたくないし*4Javaは言語仕様がキッチリしててライブラリも充実してて良いけど、今度はキッチリし過ぎる言語仕様のために、コードの中にいきなり正規表現を埋めたり、ヒアドキュメントでHTMLを埋めたり*5出来ないし、何より、HTMLのダブルクォートをエスケープするのが面倒クセーんだよ!! あ。いや、それは置いておいても、スクリプト言語と比べると、コンパイルするのが面倒ってのもありますよね。やっぱり。

というわけで、Perlサイコー! Perlマンセー Perl大好き。*6
...あ。ゴメンナサイ。石、投げないでください〜 >PHP or Java派の人

(19:25、追記)

*1:と言うか、ハッキリ言えば楽天

*2:と言うか、今まさに、コーディング時に想定していなかったPHPスクリプトへの、後から外注したデザインの組み込みをしこしことやってる最中なのですが。

*3:と呼べるほどのものではない数行のものですが、それで困ったことないし。

*4:PHPは自分にとって、小規模でテンプレートを分ける必要がないくらいの案件に、お手軽で最高。ので、DBのテーブル管理用ページとかよく作ります。デザイン凝らなくて良いし。PHPでテンプレートエンジン使うのは、やっぱり本末転倒の気が。

*5:MVCモデルなんか知ったこっちゃネー(ぉぃ

*6:イヤあ、初めてPerlのコードを見たときは、なにこのクソ言語って思ったんですけどね...