0

オブジェクトには、状態と動作が必要です。ファサード パターンを実装する場合、ファサード オブジェクトには通常、状態がなく、動作のみがあります。

これは、この種のパターンに受け入れられるものですか? これは未解決の質問なので、はい/いいえの後に詳細情報を提供してください

4

3 に答える 3

1

「オブジェクトには常に状態と振る舞いがなければならない」というルールはありません。反対に、オブジェクトに状態がほとんどまたはまったくないこと ( Stateless Servicesなど) と動作がほとんどないこと ( Data Transfer Objectsなど)を推奨するパターンがいくつかあります。Facade デザイン パターンに関しては、その状態と動作について明示的に何も述べていないので、どのように実装するかはあなた次第ですが、ほとんどの場合、状態は必要ありません...

于 2012-11-12T09:40:46.287 に答える
1

さて、答えは質問の本文にあります。ファサードはそれ自体では役に立たず、実際に状態を持つ別のオブジェクトが常に付属しています。Facade は、結合されたオブジェクト インターフェイスを拡張するだけです。はい、大丈夫です。

于 2012-11-12T08:19:39.450 に答える
0

ファサードには、監査ログや統計生成など、独自に作業を行う必要がある場合があるため、状態が存在する場合があります。

彼らが状態を必要としないのであれば、それも完全に受け入れられます。

于 2012-11-12T09:15:25.473 に答える