作者: 藤岡和夫
日時: 2006/6/04(16:26)
On Sun, 04 Jun 2006 14:29:41 +0900
"T.Watanabe" <wtnabe@...> さんwrote:

 コメントありがとうございます。

>   この辺の判断は難しいですよね。
> 
>   私も昔は何かのライブラリに依存することやフレームワークを利用するといっ
> た方向にはイマイチ馴染めませんでした。依存するものが増えるとその依存して
> いるものがどれだけ自分にフィットしているかを試す手間とアップデートに追随
> する手間が増えますので。

 そうですねえ。使えるものは使いたいけど、Windows上のjperlではあまり使え
るライブラリがなかったというか、ライブラリはうまく動かないものという先入
観があるのですね。五月連休でいろいろと試してみて、Perl5.8でUTF-8なら使え
そうだと思い始めています。

 jperlで例外的なのは、libwwwとlibnetのモジュールで、これが使えることを
知って、すごくうれしかったですね。すごい可能性を感じた。それで、いつまで
もコマンドラインやエディタをプラットフォームにするわけにはいかないと、デ
スクトップCGIを考え始めたのです。これが、実践実用Perlになった。これを書
く前にはCGIはほとんど触ったことがなかったのです。まあ、KENTさんのCGIをサ
イトに置いて使うという経験はしていましたがね。中味は知らない(^^;)

>   この判断を上の人がしているようなプロとしてやっている場合はライブラリを
> 利用した方が楽、という結論に達するわけですけど、個人が趣味でやる範囲とな
> るとどこで線を引いたものやら。自分のアンテナの範囲が狭くなっていくのか、
> 手に入る情報の CPAN 依存度がどんどん高くなっていくような感じで、一方では
> use strict って本当にいいの?的な話があったり、どんどん二極化が進んでい
> るのかなという気がします。自分が Perl にいちばんハマっていた時期とはずい
> ぶん勝手が違ってしまったなぁと言いますか。

 プロの方がどのようにされているかは知らないのですけど、ライブラリはよく
使われて枯れていて実績のあるものを使うのじゃないかと思います。要は問題が
出たときに原因がモジュールにあるのか、使い方に問題があるのか、よくわから
ないというのが困るのではと思うのですね。まあ、オープンソースは中身が見え
るから、プロにとってはなんとでもなるのかもしれません。それから、おそらく
カスタマイズ性みたいなことが重要でしょうね。僕自身は自分で書ける部分は自
分で書くという方針ですね。特にパターンマッチでテキストを加工する処理の部
分はそれが専門だと思っているし。

 use strict;use warningsキャンペーンについては、今回はキャンペーンに乗っ
て試してみたんですけど、おもしろかったというか、一応意図どおり動作すると
ころまで書いて(従来ならここで止め)、キャンペーンコードを付け加えてみると
山ほどエラーが出るので、出なくなるようにグローバル変数や未定義の変数を引っ
張り出して、myを付けたり、0や空文字列を変数値として与えたりしました。ス
クリプトを説明するのにちょうど変数にコメントを付けたりするのに都合がよかっ
たので、大正解かなと思いました。

 Perlのよいところは、変数が未定義であっても適当に都合よく動作してくれる
というところにもあるので、すべてこうあらねばならないということでもないと
は思います。意図どおりに動けば正しいという見方も当然あってもよいでしょう。
Perlにはまだ他に方法があるという精神からもそう言えるでしょう。

>   で、こんな文脈なのにさらに面倒を増やす気がしてアレですが(^^;、HTML 出
> 力にはテンプレートを使うという選択肢もアリかと。テンプレート側で自動的に
> やばげな文字列をエスケープすることができますので、XSS 脆弱性など気にする
> 部分を減らせるのではないかと思います。デザイン変更が気楽にできるようにも
> なりますし。
> 
>   最近自分ではテンプレートを使って HTML + CSS で機能イメージを作る作業
> と、中身を書く作業を完全に分けちゃってます。(デザイナと分業してますと言
> うとちょっとかっこいいんでしょうけど。)見た目が充実してくると中身に対す
> るやる気が出るという副作用もあります。というかこっちがメインかも。
> 
>   Perl なら HTML::Template が簡単でオススメ。Template Toolkit は多機能す
> ぎてイヤになります。まぁ向き不向きがあると思いますけど。

 実は、デザインも当然重要な要素であるので、HTML::Templateに触手を伸ばし
しかけたのですが、面倒くさくなって止めたんですね(^^;)Atomのcontent要素は
なんでもありで様々な形態が有り得るので、簡単には使えないのではと思うんで
す。実際、表にして表示させるだけでも結構ノウハウが必要で大変なんです。そ
れでもまだ完璧ではない(^^;)実際どのように表示させるのがよいかと考えると
まとまらなくなってしまう。デザインの話はデザイナーに任せようと(^^;;;

藤岡 和夫
kazuf@...
TS Networkのために http://homepage1.nifty.com/kazuf/