N/A

橋本氏へのコメント3---「メッセージ」は継ぎ手の部分にあって、部品そのものには意味はない

「知識を部品化(モジュール化)しておくことで、製品の品質を保ち生産の効率を上げることができる」というのは論理的にはまったくその通りだろう。論理的には異論はないが現実的に問題がないかというとそうでもない。[松岡裕典
言うまでもないが、オブジェクト指向プログラミングというのも考え方としては同じだ。しかし、プログラミングの現場に立ち会って見ると「部品の再利用」は、そう簡単ではないことに気が付く。再利用可能にするということは汎用性を持たせるということでもあるが、そのためには継ぎ手(他の部品との接合部分)をあらかじめ想定される分作っておかなければならない。
しかし、そうやって作られた「継ぎ手のたくさんある部品」は冗長性が高くパフォーマンスをあげるためのチューニングが面倒になる。というわけで、たとえJavaを使っていても、大半のエンジニアは小さなモジュールとしてではなく最初から目的に最適化した大きめのコードを書くことになる。その結果できあがったプログラムは当然部品としての再利用は難しい。
論理的には、あるいはリテラシーとして考えれば明らかな間違いだが、そうなってしまうのは、それが現実的だからであって、ここで論理的な妥当性をあれこれ言ってみても始まらない。
もちろん、知識や情報とプログラムはアナロジーすることはできても同列に考えることは出来ない。プログラムは継ぎ手が一つ足りなくても機能しないが、知識や情報は、継ぎ手の部分は受け手が補うので、極端にいうなら部品にまったく継ぎ手がなくてバラバラの状態でも機能してしまう。雑誌でいうなら記事単位で印刷して袋に入れて売り、読者はそれを取り出して勝手に組み合わせて読む、というようなイメージだ。
問題はそれを「パッケージ(=商品)」と呼ぶことが妥当かどうか、ということなのだが、しかし「商品であるかどうかは消費者が決めること」でもある。つまり現実的には「それはそれであり」だし、世の中の趨勢がそちらに向かっているというのも事実なのだが、個人的にはどうも釈然としない部分が残る。
簡単に言うなら「メッセージとは継ぎ手の部分にあって、部品そのものには意味はない」と思うからだ。たとえば「僕」「あなた」「愛」という3つの部品だけがあってもメッセージにはならない。「僕(は)あなた(を)愛(している)」なのか「僕(は)あなた(に)愛(されたい)」なのかがわからないというようなことだ。
あくまで比喩なので「希」という部品を足せばいいじゃないか、とか、あるいはもっと本質的に「意味なんか読み手が勝手に作るもんだ」なんて言わないように。それはそうなんだが、僕が問題にしているのは「それはそうだが、ではどうやって伝えればいいのか」であって、「それはそういうもんだ」で済むのであれば、もともと考える必要はないからだ。
(Thu, 19 Feb 2004)