Здравствуйте, Аноним, Вы писали:
А>Обладает ли следующий интерфейс допустимым контрактом:
А>А> public interface IContainer<T>
А> {
А> IEnumerable<T> Items { get; }
А> int Count { get; }
А> }
А>
А>Ну понятно, Count я могу определить через Items, а вот Items как бы я определить не могу. Значит контракт не допустим?
Где вообще,уважаемые, можно про такие вещи почитать?
А>Спасибо.
На лице непонимание "контракта" и "интерфейса".
1) Интерфейс класса то что предоставляет класс потребителю с точки зрения языка, то есть в C# интерфейс — набор свойств и методов с именем и типами.
2) Контракт — дополнительные условия, налагаемые на интерфейс. например то что Count всегда положителен, а Items не возвращает null.