5
구성원 컬렉션을 노출하기위한 ReadOnlyCollection 또는 IEnumerable?
호출 코드가 컬렉션을 반복하는 경우에만 내부 컬렉션을 IEnumerable이 아닌 ReadOnlyCollection으로 노출하는 이유가 있습니까? class Bar { private ICollection<Foo> foos; // Which one is to be preferred? public IEnumerable<Foo> Foos { ... } public ReadOnlyCollection<Foo> Foos { ... } } // Calling code: foreach (var f in bar.Foos) DoSomething(f); 내가보기에 IEnumerable은 …