Необходимы ли сеттеры для свойств типа коллекции
//Type 1
class Company
{
private IList<Customer> customers;
public IList<Customer> Customers
{
get { return customers; }
set { customers = value; }
}
}
//Type 2
class Company
{
private readonly IList<Customer> customers = new List<Customer>();
public IList<Customer> Customers
{
get { return customers; }
}
}
Когда я использую Тип 1 против Типа 2?
Разве не будет достаточно, если я инициализирую List и использую свойство «Только для чтения»? как в Company.Customers.Add(new Customer)
Какова наилучшая практика в отношении предоставления сеттеров для свойств типа коллекции?