interface IFoo
{
int MyReadOnlyVar { get; }
}
class Foo : IFoo
{
int MyReadOnlyVar { get; set; }
}
public IFoo GetFoo()
{
return new Foo { MyReadOnlyVar = 1 };
}
Является ли вышеприведенный способ реализации объекта readonly/immutable? Неизбежность IFoo может быть нарушена с временным нажатием на Foo.Метод скрытия с интерфейсами
В общем случае (некритических) случаях скрывается функциональность через интерфейсы общей схемы? Или это считается ленивым кодированием? Или даже анти-шаблон?