著作一覧 |
で、実に大失敗は気持ちが良い。すがすがしいというのは、こういう割り切り方だろう。InterLISPがどうだろうが、SmallTalkがどうだろうが、全然、関係無し。企業利益に貢献したか、しないか。素晴らしい。
トラウトから見れば、パロアルトの研究者なんていうのは、死にかけの動物にたかる虱みたいなもんなんだろう。そして、間違いなく、企業利益に貢献したかしないか、の観点からはその通りなんだろう。
しかし、研究者は研究し、営業マンは日本人にネクタイを売りイヌイットに水着を売る。そういうもんだ。だから、悪いのはCEOということになる。それは株主の信頼を裏切ったからというような倫理的な側面なのかなぁ、と思うと、別段、そういうこともなくて、単に自分の献策が受け入れられなかったからのように読めるのは、まあ、しょうがないのかも。
こういうスタイルの書物としては、論語とか、韓非子とか、これまでもあった。X国の王YはZに対してAとした。その結果BとなりCとなった。子(またはある人)曰く、これはDなのである。もってEとせよ。
春秋戦国の国家と諸子百家の関係。
インターフェイスを責務とするのは、一体なんだろうと思っていたが、エンティティとそのロールの関係を、インターフェイスを持ち多重継承を持たない言語(JavaとかC#とか)で実装に落とし込むと、そうなる可能性があるということなのだ、と気付いた。
だが、それはずいぶん、安直な実装への落とし込みだな。
実際には、コンポジションとして実装したほうが良い場合もある。
DOAだとなんでもぶち込んだでっかなマスターと、それに対するビューという関係になりやすいから、ロール=ビューとなるかも知れない。整合性は取りやすいかも知れない。この場合、オブジェクトとして全部持った固まりを作る必要はないから、個々のビュー毎にオブジェクト化すればよいように思える。
また、RDBが使えるのならば、最大公約数のマスターとなるテーブルと、そこからリレーションを張った別のテーブルとして、個々のテーブルをオブジェクトにマッピングすることも可能だ。
いずれにしろ必ずしもロール=インターフェイスとする必要は無い。
たとえば、良くある例:従業員というマスターに対して、経理システムに対する申請者ロール、申請者ロールから特化した出張申請者ロール、旅券手配申請者ロール、旅費精算申請者ロール。各申請手続き毎にキューイングし、処理中の申請者を保持するテーブルを持つ場合。それぞれのロール毎に異なるプロセスが必要な場合。
それぞれについてのデータベースと、実行時のオブジェクトのマッピング。
と書いてから、あまりの下品な響きに愕然としてしまった。が、単にトラウトの顰に倣ってみようという意味で、なんとなくトラウトを翻訳してしまっただけなのであった。
Java − 勝ちだな。Appletがカスだろうがなんだろうが、インターネット時代の、1度書いたらどんなとこでも動く魔法のプログラム言語というイメージが、技術なんか少しも知らない企業活動の意思決定者のレベルにまで浸透しているからだ。
.NET − というわけで、ダメだろう。特に、エンタープライズに入り込むのは、奇跡でも起きない限り無理と考えたほうが良い。何よりも、マイクロソフトはWindowsのイメージであり、それはパーソナルコンピュータであって、これっぽっちもミッションクリティカルでは無い。
・Javaと.NETという比較は変なので、まあ、J2EEと.NET Frameworkとでも読み替えるとして、
要するに、技術的にどちらがより優れている(とは何についてだろうか? 開発しやすさ、適用の柔軟性、まあ、なんでも良いが、とにかく技術的な優劣という言葉が意味するもの)は、これっぽっちも、関係ない。仮に、CTOが、正確に判断を下したとしても、役員会で、ひっくり返る。ここで、必要なのは、マイクロソフトや、Windows、Visualといったタームを外して、調べれば親会社がシアトルにあるとわかるだけの、別の企業を利用すること。すでにマイクロソフトがブランドなので、MS-Missionとかとしてもダメダメ。今ならPeopleSoftを買収してやらせる、とか。
Sunはどうだろうか? RISC(=高速、近代的なCPU)のイメージは残っていると考えてよい(技術的な現実は関係ないことに注意。ちなみに、トラウトはRISCが1番優れているというキャンペーンによってまだ洗脳されたままのようだ。P.12参照。これがイメージというものだ)。PA-RISCやMIPSという固有名詞を覚えている人間はいないだろうし、Itanium-IIについて言えば、MSと同じでインテルはデスクトップにインサイドのイメージだからだ。また、ワークステーション屋というイメージは逆になくて、おそらくサーバーというなんだか良くわからないが、センターと呼ばれる場所に置いてあるでっかなコンピュータのイメージはあるみたいだ。SunOSを捨ててSolarisと名前だけじゃなくBSD->SYSVシフトまでした時に、ワークステーション屋ではなくサーバー屋に変わることに成功しているからだ。しかも、賢いことに、苦境の時期にCobaltに力を入れたり、インテルSolarisに力を入れたり、Linuxに力を入れたり、一切していない。していないということは、SPARC、Solarisのブランドイメージを保持しているということだ。実際には大した規模は無いから、IBMみたいにサービスへシフトするということは現実的にできないだろうから、H/Wに執着することが、逆に正解なんだろう。そもそも、Javaという魔法のソフトウェアのブランドは、Sunとは一切、関係が無い。すなわち、Windowsでも動くJavaと、Solaris=SPARCのブランドは、完全に切り離されている。それが逆に、サーバー屋としてのイメージをふらつかせないものになっている。
結局、ビルゲイツは世界一の金持ちであっても根は技術者で、マクニーリは根っからの経営者ということですな。
マクニーリの演説で、「RISCとCISC、それぞれ生き残るのは1社だ。まずRISC。PA-RISCなんて知っている人間は誰も居ない。Alpha? 誰も64ビットには興味がない。MIPS? プリンタ用のCPUをサーバーに使いたい人間がいるはずがない。つまり、世の中には2つのCPUしかない。サーバー用にRISCのSPARCと、パソコン用にCISCのインテルだ」というようなのがあった。Alphaを叩くために考えた演説だろうから、相当、前の話だ。が、非常に強力な心象が形成されたらしく、今でも、だいたい覚えている(というわけで、正確な引用ではない)。しかも、インテルを認めながら、あくまでもパソコンというマーケットだけの存在として矮小化して見せている。これがブランディングってやつなんだろう。
ジェズイットを見習え |