IradonlyCollection против ReadonlyCollectionC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 IradonlyCollection против ReadonlyCollection

Сообщение Anonymous »

По SO уже есть пара похожих вопросов, но ни один из тех, что я нашел, действительно не затрагивает эту конкретную тему, так что вот...

Насколько я понимаю, всегда следует пытаться вернуть интерфейс через конкретный класс. Не буду вдаваться в причины, об этом уже много написано в SO.

Однако в случае IReadOnlyCollection и ReadOnlyCollection Я не уверен, следует ли следовать этому правилу.

IReadOnlyCollection можно легко преобразовать в список, что.. . хорошо... нарушает аспект ReadOnly, обещанный контрактом.

Код: Выделить всё

ReadOnlyCollection
однако не может быть введено в список , но это означает возвращение конкретного класса. Мне кажется, что в большинстве случаев readonly*/iReadonly* объект возвращается только возвращаемым методом или свойством только для чтения.
Так что даже если пользователь решает отменить его на что -то еще (в случае с Iradonly*< /code> Obj Readonly* object), на самом деле нет никакого способа, чтобы класс, разоблачающий readonly*/ireadonly* объект, примет это обратно.

Итак, какова рекомендация здесь, вернуть интерфейс Iradonly* или конкретный readonly* экземпляр класса?

Подробнее здесь: https://stackoverflow.com/questions/451 ... collection
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Функция против класса против модуля против пакета против сеанса для областей фиксации в Pytest
    Anonymous » » в форуме Python
    0 Ответы
    138 Просмотры
    Последнее сообщение Anonymous
  • Функция против класса против модуля против пакета против сеанса для приспособлений в Pytest
    Anonymous » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Как разрешить IradonlyCollection вместо оборудования
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Как разрешить IradonlyCollection вместо оборудования
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Как разрешить IradonlyCollection вместо оборудования
    Anonymous » » в форуме C#
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»