Здравствуйте Edward, вы писали:
E>Есть много книг в которых доходчиво описано зачем нужна эта "игра слов" E>например "Технологии ActiveX и OLE" Дэвида Чеппела, или "Inside OLE" Kraig Brockschmidt'а E>имхо не стоит браться изучать .NET не изучив хотя бы основных положений COM
Книги действительно замечательные я их читал некоторое время назад, но давайте разделим понятия.
Есть технологии в которых используется понятие интерфейса для простоты восприятия (хотя в глубине все интерфейсы и IUnknown в частности — это обычный чисто абстрактный клас С++) и есть язык программирования (С#) в который это понятие введено синтаксически.
Прочитав спецификацию языка мне вдруг стало интересно:
1. зачем это (interface) нужно, если есть абстрактные классы
2. если интерфейс это контракт — почему нет встроенного контроля версий интерфейсов (или я не нашел ссылки что он есть?)
3. почему множественное наследование возможно только для интерфейсов