6

いくつかのモジュールを備えたWPFプリズムデスクトップアプリがあります。これまで、ローカライズされたすべてのリソースをインフラストラクチャアセンブリの共通リソースファイルに配置し、すべてのモジュールで参照していました。

しかし最近、私はそれがメンテナンスの観点から本当に正しいアプローチであるかどうか疑問に思っています。本質的に、それはモジュール性を破るようなものでもあります。モジュール自体にモジュール固有のリソースファイルを含めることは、長期的にはより良いアプローチでしょうか?

すべての考えに感謝します。

4

2 に答える 2

5

Prismの主なターゲットの1つがモジュール性である限り、リソースを適切なアセンブリにのみ配置することは明らかなようです。1つの集中型アセンブリを介してリソースを共有することは、モジュール性の反対です。一元化された方法でそれを行うと、さらに(オプションの)モジュールを追加したいときに別のタイプのDLL地獄が得られます。アセンブリを使用するモジュールの知識がなくても、共通のアセンブリを更新する必要があります。そして、どのモジュールが再び存在するかを決定することは、モジュール性自体に違反します。もう1つの方法は、共通アセンブリを常に最新バージョンに更新することです。何をするにしても、一元化されたアプローチに従うと、すべてのモジュールに下位互換性を持たせる必要があります。

これが今の私の見方です。しかし、Prismを数週間しか使用していない限り、私の発言がどのように行われるべきかはよくわかりません。

于 2010-10-05T14:35:32.517 に答える
1

Prismを使用しているとき、個々のモジュール間に参照はありません(1つのモジュールが実際に別のモジュールの拡張である場合を除く)。私は、共有リソース、インターフェースなどを、すべてのモジュールとシェルを含むアセンブリによって参照される「共通の」アセンブリに配置する傾向があります。次に、インターフェースを実装するものがIoCコンテナーを介して取得され、実装は「属する」モジュールに配置されます。

あなたが書いているように-インフラストラクチャモジュールにそれらを含めると、Prismの背後にあるアイデアの1つが壊れます。

于 2010-10-05T11:37:36.527 に答える