[250] Re:ビルドという行為について
投稿者:けろ助
2007/02/20 02:13:25
お世話になっております、けろ助でございます。
お陰様で風邪も良くなりまして、また勉強に励んでおります。
> あのディレクトリ構成は実際「Web アプリに限定したからこそ」だと思います。
> ていうか私はあれを最初に見たとき、こんなことをフレームワークで決めて欲しくない、
> と思いました。が、ユーザとしては無限の自由度を欲しがりますが、それがかえって
> 混乱を招くこともあるわけで、あれはあれでよいのかもしれません。
つたない考えなのですが、これって「『今対象としている問題の領域』をどこに限定し、いかにモデル化する
か」というテーマに帰着していくんだと思うんですね。
オブジェクト指向設計の用語では「ドメイン」と呼ぶそうですが。
ドメインの決定とモデル化を上手く行うことが、結局のところ良い設計となる…ということになるのでしょう。
「アルゴリズムとデータ構造」といった、割と枯れたテーマなら、ノウハウや経験則の蓄積も豊富で体系的にま
とめられた書籍を気軽に入手して勉強できる程の環境にあると思いますが、上に挙げたテーマは「まだこなれて
ないジャンル」であるだけにまだ模索状態なような気がします。
そんな中で、J2EE は一定の成果を上げることができた、と。
今のところ、私はそんな解釈をしています。
> Cが、もし最初から、インデントがいわゆる「K&Rスタイル」になっていないものを
> コンパイラのレベルで文法エラーで弾いていたら、スタイルにまつわる宗教戦争は
> 発生しなかったわけで。
> # でも、そういうことをツールの設計者がガチガチに決めてしまうと、なんか
> # 普及しなさそう、という気もします。
ええ。そういう意味なら、C 言語は、上手いことユーザーのニーズに (今も) マッチした言語ですね。
制限と自由のさじ加減が非常にバランスが良い言語だと思ってます (除:宣言構文)。
「C 言語ポインタ完全制覇」を最初に読んだ時は「殴るんなら James Gosling より Dennis Ritchie だろ」と
思っていた私ですが、Java を本格的に書き始めた今では考えが全く逆ですから (汗)。
で、ツールの制限の話なのですが、実は私、色々な所で悪口を聞く COBOL を嫌いになれません。
COBOL の持つ記述上の制約は、「誰でも、それなりに実用に耐えうるソースを書ける」と信じられていた時代な
らではのものだからです。
# 実は私、前の会社でホスト系言語 (COBOL、PLI/I、JCL …等々) の解析プログラムをメンテしてました。
# COBOL はソース記述開始位置等に非常な制約がある言語です。
# また、今では「変態言語」の名は Perl が欲しいままにしていますが、私ならその称号を PL/I に与えたい。
話それました。すみません。
要は、「『作者の設定した自由と制約』が時代やユーザーのニーズとどれだけマッチしているか」、が一番重要
な事項になのだろう、と思った、ということです。
流行る言語なり、ツールなりは、時代に見出されただけであって、後々まで残る方法論とはまた別なのだ、って
事なんです。
前向きに考えるなら「今からでもソフトウェア工学の根本的進歩を目の当たりにできる」と思えるでしょうし、
後ろ向きに考えるなら「なんだ、ソフトウェア工学ってこの程度なのか…」と思える混沌とした時代なのかな…。