Здравствуйте, Ikemefula, Вы писали:
I>Например в метод add суем логику обнуления контейнера.
Кто и зачем сует в метод add логику обнуления контейнера?
I>>>И когда некто понаимплементит в одном классе кучку интерфейсов, уследить за свойствами этого решения становится, мягко говоря, проблематично.
НС>>У любой технологии есть свои недостатки. Вывод то какой? Не использовать ООП?
I> наоборот. Если ты понаимплементил интерфейсов это по факту отказ от ооп.
Нет.
НС>>Зачем мне приводить какой то пример? Тебюе без примера непонятно, что связь базовый класс — наследник намного сильнее, чем интерфейс — реализация?
I>Непонятно, что ты имеешь ввиду.
Я тут рядом
ссылочку дал. Там поподробнее.
НС>>С чего бы? Гарантию иммутабельности ООП в принципе никогда не давал и не дает, хоть с интерфейсами, хоть без.
I>Успокойся
Я спокоен. Без демагогии никак?
I>- вот ты видишь, что интерфейс иммутабельный и в доке прямо сказано.
Нет, не вижу. Нет такого свойства у интерфейса, оно им ортогонально. Иммутабельность — это совершенно отдельная характеристика, и гарантий в этом плане со стороны шарпа крайне мало, хоть используй интерфейсы, хоть нет.
I>Давай не будем скакать
Скакать начал ты, притянув за уши иммутабельность. Я же который раз уже пишу очевидное — абсолютных гарантий ни одна конструкция языка не дает и дать не может.
I>>>А у тебя выбора нет,
НС>>У меня выбор есть
I>Так покажи этот выбор, как ты обеспечишь ту самую гарантию.
Ты пытаешься лишить меня выбора, зачем то навязывая мне потребности в гарантиях иммутабельности.
I>>> т.к. в языках отсутствует проверка внятных гарантий.
НС>>А внятными гарантии кто назначает?
I>Как и везде — компилятор, дизайн, тесты и тд.
И каким образом компилятор назначил иммутабельность внятной, а контроль на null — нет? Можешь пояснить?
I>>>Нужно заменить extends на subtype и все станет хорошо.
НС>>Нет, все не станет.
I>Тогда показывай пример, если тебе есть чего сказать.
Чайники Рассела полетели? Это ты давай доказывай, что subtype проблему решит.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>