村山です.
> >OOA/OOD さえやればゴールが達成できると思っている人がいるならば,それはそ
> >の人が悪いのでしょう.OOA や OOD が悪いわけではありません.
> 「実装を知らないで OOA/OOD をやる人がいる」から「OOA/OOD というものは
> 役に立たない」
「全てのOOA/OOD屋が100%実装を分かってない」
と言ってるわけではありません.
「OOA/OOD屋には実装を知らない傾向が強く見られる.」
というだけのことです.
これはXMLにおける「貴族」と「ボヘミアン」でもそうですが,
「貴族」は基本的にはW3C XML Schemaを押す陣営で,
「ボヘミアン」は基本的にはRELAX/RELAX NGを押す陣営です.
が,その背景には「貴族」の「実装を無視してモデル化さえすれば十分」と
考える姿勢などがあります.XML Schemaには仕様に問題があり,実装に
問題があるわけです.にもかかわらずXML Schemaを押すということは,
その人は実装を分かってない可能性が高い.
OOA/OODなどにしてみても,それが実装の役に立たないことは予想できる
ことです.一度や二度は試しに触ってみるかもしれませんが,すぐに
辞めるでしょう.にもかかわらずOOA/OODを推進し続けているという
ことは,実装を分かってないという可能性が高い.
それにOOA/OODなんてやってると,実装の感が鈍るでしょう?
UMLとコードと半々で書いてるセミプロと,フルタイムでコードを書いてる
プロとでは,(他の条件が同じ限り)プロの実装能力がセミプロの実装
能力を次第に凌駕し,引き離していっても不思議ではない.だから私なら
UMLを書く暇があったらコードを書きます.すこしでも長く,プロで
あるためには,それらは邪魔なのです.
> それよりも、目的に向かって「駄目でないもの」の検討に時間を使う方が生産的
> だと考えます。
だから私はUML/OOA/OODを廃して,OOPを使ってます.実に生産的でしょ.