-3
のDisavantageを理解する:「は、著者はこれで何を意味したOOP
のオブジェクト指向言語の問題は、彼らが彼らと一緒に持ち歩くことをすべてこの 暗黙の環境を持っています。あなたは バナナを望んでいたが、何を得たことは、バナナと 全体のジャングルを保持ゴリラだった。」
をそれはかなり手厳しいOOPの批判が、なぜように聞こえますか?あなたもBanana
を使用するGorilla
とJungle
クラスを必要とするので、
class Banana {
Gorilla WhoHoldsYou() { return gorilla; }
Gorilla gorilla;
}
class Gorilla {
Jungle WhereDoYouLive { return jungle; }
Jungle jungle;
}
これは、コードの再利用のための素晴らしいではありません:OOPで
文脈から理解できない場合は、作者はかなり貧弱な仕事をしています。文脈が提供されていない場合は、それを役に立たないレトリックとして扱います。 – Phylogenesis
しかし暗黙の環境を持つコードの意味は何ですか? – MissDizy
これは、オブジェクト指向の優れた設計がクラス結合を避ける理由です。ゴリラの定義の代わりに、バナナを使用できるように、BananaHolderとの最小限のインタフェースが必要です。それはさておき、この質問は[asking](http://stackoverflow.com/help/how-to-ask)のStackOverflowルールに従いません。 –