下面不是一個好習慣嗎?從共享某些部件的2個接口實現一個類
public interface IMyImmutableData
{
int Data { get;}
}
public interface IMyMutableData
{
int Data { set;get;}//implements both get and set
}
public class MyData : IMyImmutableData, IMyMutableData
{
public int Data{get;set;} //implements both IMyImmutableData, IMyMutableData
}
void Main()
{
MyData myData = new MyData{Data=10};
Console.WriteLine(myData.Data);
}
的原因,我問的是,ReSharper的給了我以下警告:
我想上面這樣做的原因是,當我創建方法,其使用了「可能的不確定性通過這個接口訪問,而」 MyData類,我想將它作爲IMyMutable或IMyImmutable對象發送,以便該方法的用戶知道他們可以期望該方法更新或不更新傳入的對象。
就像一個筆記,我認爲'IMyReadOnlyData'會比'IMyImmutableData'承載更好的含義,因爲對象是可變的。 –