Comments 2
Автопроперти очень даже хороши.
Часто бывают ситуации, когда есть интерфейс с геттером, и класс реализует его с помощью автопроперти с приватным сеттером:
Второй вполне хороший пример:
Часто бывают ситуации, когда есть интерфейс с геттером, и класс реализует его с помощью автопроперти с приватным сеттером:
interface IA
{
int Foo { get; }
}
class A : IA
{
public int Foo { get; private set; }
public A(int foo)
{
Foo = foo;
}
}
Второй вполне хороший пример:
class A
{
protected int Foo { get; private set; }
public A(int foo)
{
Foo = foo;
}
}
class ADerived : A
{
public ADerived(int foo) : base(foo)
{
}
public int SomeMethod()
{
return Foo*2;
}
}
+1
Совершенно верно. Автор исключил из рассмотрения автосвойства с приватными сеттерами. В другой статье он так же замечает, что свойства хороши в качестве инструмента для облегчения изменений при смене версий, при разработке публичного API.
Автор указывает на недостатки именно таких видов свойств, которые он приводит в пример)
Автор указывает на недостатки именно таких видов свойств, которые он приводит в пример)
+3
Sign up to leave a comment.
«Запах» кода: автоматические свойства