オブジェクト指向は戦場では必要無し その2
■ このスレッドは過去ログ倉庫に格納されています
0772デフォルトの名無しさん
NGNGOO で問題領域をモデリングする場合には、その分野のエキスパートの認識方法
を反映した形で設計を行う。それが最終的には仕様変更の強さにつながってくるん
だが、どうしても設計にかかる時間は長くなる。
人間は世界を動的分類で捉えてる節があるんだが(その方が明らかに分析しやす
い)、現在主流の OOPL は動的分類には対応していない。そのため、設計段階で
動的分類を静的分類に落とし込む必要があるのだけど、
- どこまで静的分類に落とし込むのか
- どのような手法を使うのか
が割と難しい。
また再利用性を高めることを目的とした場合、主流の OOPL が言語機能として提
供している「実装継承」は目的の一部しか達成できない上、基底クラスと派生クラ
スの間の結合を不必要に強めてしまう。
実装継承の問題を避けつつ再利用性を上げるための方法は Design Patterns と
してまとめられているが、こういったイディオムを知らないと再利用できる枠組み
が作れないことも、難点かもしれない。Design Pattern を使ってかかれたコードは、
今度は Desgin Pattern 知らないと
「何を、こんな回りくどいことをやってるんだ」
ってコードに見えてしまうし。
OO でやろうとすると、覚えることが多く、失敗すると悲惨で、かつ初期コストが嵩
むのよ。(それでも OO 捨て捨て、とならない程度にはメリットがあるわけだが)
■ このスレッドは過去ログ倉庫に格納されています