C# Использование IList вместо списка
Возможный дубликат:
C# - списокили IList ;
Я работаю над решением, заметил, что много IList реализуется. Просто интересно, какой смысл использовать IList, когда вы можете использовать List?
3 ответа
Вы всегда должны пытаться использовать interface
где это возможно, чтобы позволить пользователю иметь большую гибкость в отношении того, какую реализацию они используют. В общем-то, IEnumerable
а также IQueryable
даже лучше чем IList
поскольку они более общие, если вы, конечно, не хотите ограничивать это вескими причинами.
Поскольку некоторые коллекции могут наследоваться от IList, а не от List, например, ObservableCollection.
Если вы хотите не хотите наследовать List
и просто хочу реализовать использование интерфейса IList
,
Возможно, вы хотите вернуть объект, который поддерживает IList
но реализация не имеет отношения к вызывающей стороне?
В вашем случае реализации IList
может привести к ненужной печати, это может быть правильно, я не могу знать без дополнительной информации.