我们有一个模块化的 MVVM 应用程序。其中一个界面如下所示
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;
}