対象:いわゆる充血モデルと貧血モデルを見ます


詳細
 
 
 
ネット上でこのようなオブジェクトデザインについての話を見ました.
充血モデルは実は簡単で、オブジェクト向けの設計の本質です:“1つのオブジェクトは状態と行為を持っています”、例えば1人、彼の目はどんな鼻はどんな状態で、人はゲームをしたりプログラムを書いたりすることができて、これは行為です.なぜ「人マネージャー」というものが「ゲーム」を手伝うのでしょうか.簡単なJ 2 EEの例を挙げると、ユーザー(User)に関連する機能を設計し、伝統的な設計は一般的に:クラス:User+UserManager保存ユーザーコール:userManager.save(User user);充血の設計は、クラス:User保存ユーザ呼び出し:user.save();Userには、自分自身を保存する行為があります.
 
 
Userは自分自身を保存します.これはどんな論理ですか.とてもおかしいと思います.
 
ユーザーユーザーユーザーは自分を保存することができて、それではユーザーも自分を削除することができて、これはオブジェクトに向かう最初の考え方と一致しなくて、“用例”の段階で、ユーザーの“自分を削除します”の用例がないためです.
 
だから私の意見は、「行為」がどこにあるかは、必ず例によって決まるということです.
 
「人間マネージャー」は、人間自身が「自分を削除」するのはさらにでたらめな概念です.
 
私の理解:
 
「保存」と「削除」自体はシステムが提供する機能であり、その目的語、あるいは「作用対象」はUserであり、主語ではなく、対象向けの概念であり、パッケージ、多態は手段であり、本質と神髄は真実の世界で問題を考える方法で分析して設計されているので、主語と目的語をはっきり区別する必要がある.
 
一般に、メソッド呼び出しは
 
  .  (  )
 
そうであるべきではない
 
  .  ()
 
実际に実现する上で、大きな问题もないようで、「人は自分を削除する」という行为ですが、コードやデザインを一つのシーンや物语の陈述とすれば、どの文も、主语が欠けていて、目的语を主语としているのが典型的なロジックではわかりません.
 
だから、いわゆる「充血モデル」、「貧血モデル」は設計分野の概念にすぎず、純粋な設計と実現レベルの概念であり、実際にこれらを議論する意義と価値は低い.オブジェクト解析に向けて、まず、1つの動作の開始者または「ソース」と呼ばれるもの、操作されるオブジェクトが何であるかを決定しなければならない.
 
私は比較的質素なプログラマーとデザイナーで、少し偏屈で執拗ですが、私は一般的に権威と流行のものに屈しません.私は自分の方法論と価値を持っています.私はいつも物事の最も本質的な触発から問題を分析し、優劣を評価して取捨選択するのが好きだ.だから、私の観点では、多くの人が見て変だと思っているかもしれません.実は私も1家の言叶で、孔の见、书いて、自分の设计の方面の考え方と心得を整理することができることを望んで、他の人にいくつか异なる観点と考え方をあげることができることを望んでいます.