2009-06-08 8 views
3

リソースファイルはどこでどの粒度(application/assembly/namespace/class/...)になるべきですか?.NETアプリケーションでリソースをグループ化するための最良の方法は何ですか

レイヤードアーキテクチャを使用すると、アプリケーションを個別の専用アセンブリに分割できます。利点は、依存関係を管理してコードが束縛されないようにすることがより簡単であることです。

アプリケーション全体のリファクタリング時に、断片を別々のアセンブリに分割したり、独自のアセンブリに移動したりすることができます。これは、機能がコアレイヤーに移動するのに十分に成熟したか、またはそれを独自のアセンブリに移動させるのに十分な大きさになったために起こる可能性があります。

リファクタリング処理中に、リソースを移動する必要があります。リソースをグループ化するための戦略や実行されるリファクタリングのタイプによっては、多かれ少なかれ難しいかもしれません。 - アセンブリごとに1つのリソースファイルに - アセンブリ内の名前空間ごとにリソースファイルに - リソース内にリソース(文字列、イメージ、ファイルなど)をグループ化できました。 - アプリケーション内のすべてのアセンブリで共有される1つのアセンブリ内で、 など。

リファクタリングはリソースの選択されたグループ化戦略の影響を受けることがあります。リソースファイル内の文字列の翻訳など、他の操作も影響を受けます。

ベストプラクティスとはどのようなグループ戦略が考えられますか?

答えて

2

こちらの回答よりもコメントを多くしていますが、これを見てください:MSDN Internationalization page

あなたの構造が国際化にどのように役立つかを心に留めておく必要があります。国際化が必要な場合は、構造が制約を受ける場合に大きな問題が発生します。

0

私は通常、リソースをアセンブリに結びつけていますが、未来がどうなるかわからない場合は、共有リソースdllが良い解決策になるかもしれません。

+0

私は共有リソースアセンブリの考え方が嫌いです。結束力の弱いシステムで終わるかもしれません。私が1つのアセンブリだけを別のアプリケーションと共有する場合は、他のすべてのリソースを出荷する必要があります。私は物事をより近づけることを好む傾向があります。そうすれば、将来的には管理が容易になります。 – Christo

関連する問題