モジュラー MVVM アプリケーションがあります。インターフェースの1つは以下のようになります
public interface ILogger
{
void ReportError(ErrorType type);
}
ErrorType タイプは以下のようになります
class ErrorType
{
string Message;
string Title;
object Owner;
}
タイプobjectに注意してください。ILogger インターフェイスを実装するモジュールは、呼び出しモジュールの名前が必要なだけなので、これから GetString() を呼び出すだけです。オブジェクトの使用は私にとって問題のように見えます。疎結合アプリケーションを開発しており、モジュール間で任意のオブジェクトを渡すことができますか?
justified as object の使用は、タイプミスの原因となる可能性のある文字列と比較して、より柔軟で型名を与えることが保証されています。また、インターフェイスの実装者は、GetString() を呼び出す以外には何もしていません。
アドバイスをお願いします。オブジェクトの使用法は、モジュールが自分自身を識別する方法を知らないように見えます。このようなオブジェクトを使用するのは良い設計ですか?
私はより多くの観点から考えています
class ErrorType
{
string Message;
string Title;
string ModuleName;
}