Зачем отказались от множественного наследования в С#?
От: binarycode Россия  
Дата: 01.08.06 20:22
Оценка:
Вот ответьте мне опытные, зачем отказались от множественного наследования ? Какова причина ?
Зачем убрали возможность public/protected/private наследования даже в одиночном.
Можно ли все случаи и возможности множ.наследования в проектировании решить с одним одиноночным и n колличеством интерфейсов ?
Может где-то уже тут это обсуждалось... Интересно же знать,что думают учёные по этому поводу

02.08.06 01:22: Перенесено модератором из '.NET' — TK
Начинающий программист
Re: Зачем отказались от множественного наследования в С#?
От: binarycode Россия  
Дата: 01.08.06 20:24
Оценка:
ops public конечно же остался.
Начинающий программист
Re: Зачем отказались от множественного наследования в С#?
От: Mab Россия http://shade.msu.ru/~mab
Дата: 01.08.06 20:27
Оценка: -1
Здравствуйте, binarycode, Вы писали

http://www.rsdn.ru/search/?q=%EC%ED%EE%E6%E5%F1%F2%E2%E5%ED%ED%EE%E5+%ED%E0%F1%EB%E5%E4%EE%E2%E0%ED%E8%E5&mode=rank&group=1001
Re: Зачем отказались от множественного наследования в С#?
От: Аноним  
Дата: 01.08.06 20:30
Оценка:
Здравствуйте, binarycode, Вы писали:

B>Вот ответьте мне опытные, зачем отказались от множественного наследования ? Какова причина ?

B>Зачем убрали возможность public/protected/private наследования даже в одиночном.
B>Можно ли все случаи и возможности множ.наследования в проектировании решить с одним одиноночным и n колличеством интерфейсов ?
B>Может где-то уже тут это обсуждалось... Интересно же знать,что думают учёные по этому поводу

Ветка обещает быть многоочковой В "философию" прям щас.
Re: Зачем отказались от множественного наследования в С#?
От: McSeem2 США http://www.antigrain.com
Дата: 02.08.06 03:10
Оценка: 1 (1) +3 -9 :))) :))) :)))
Здравствуйте, binarycode, Вы писали:

B>Вот ответьте мне опытные, зачем отказались от множественного наследования ? Какова причина ?


И правильно сделали. Жаль, что вообще не запретили наследование. Ибо наследование в программировании компьютеров — это самая противоестественная вещь, которую только можно придумать. Достаточно вспомнить недавний спор на РСДН о том, кто от кого должен наследоваться — квадрат от прямоугольника или наоборот(!) — Это же просто цирк с конями сферическими в вакууме!

Инапсуляция — да! Полиморфизм — 256 раз да! Наследование — отказать. Ибо нету такой штуки в природе, ну нету. Точнее есть, но она совсем из другой оперы.
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Re[2]: Зачем отказались от множественного наследования в С#?
От: IT Россия linq2db.com
Дата: 02.08.06 03:29
Оценка: +2 :)
Здравствуйте, McSeem2, Вы писали:

MS>Инапсуляция — да! Полиморфизм — 256 раз да! Наследование — отказать.


А мне нравится

MS>Ибо нету такой штуки в природе, ну нету. Точнее есть, но она совсем из другой оперы.


А инкапсуляция с полиморфизмом есть?
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: Зачем отказались от множественного наследования в С#?
От: Gadsky Россия  
Дата: 02.08.06 04:46
Оценка: :))) :)
Здравствуйте, McSeem2, Вы писали:

MS>Инапсуляция — да! Полиморфизм — 256 раз да! Наследование — отказать. Ибо нету такой штуки в природе, ну нету. Точнее есть, но она совсем из другой оперы.


В коде все должно быть прекрасно. И полиморфизм, и инкапсуляция, и наследование... (с) Асику
Re[2]: Зачем отказались от множественного наследования в С#?
От: Nikolay_Ch Россия  
Дата: 02.08.06 05:06
Оценка: :)
MS>Инапсуляция — да! Полиморфизм — 256 раз да! Наследование — отказать. Ибо нету такой штуки в природе, ну нету. Точнее есть, но она совсем из другой оперы.
Как это нету? А симбиоз организмов? Его можно рассматривать как некий механизм наследования.
Re[3]: Зачем отказались от множественного наследования в С#?
От: Centaur Россия  
Дата: 02.08.06 05:49
Оценка:
Здравствуйте, Gadsky, Вы писали:

G>В коде все должно быть прекрасно. И полиморфизм, и инкапсуляция, и наследование... (с) Асику


Сначала следование, выбор и повторение, а потом уже вышеперечисленное
Re: Зачем отказались от множественного наследования в С#?
От: sergey_mosyakov  
Дата: 02.08.06 06:00
Оценка: -4
Здравствуйте, binarycode, Вы писали:

B>Вот ответьте мне опытные, зачем отказались от множественного наследования ? Какова причина ?

B>Зачем убрали возможность public/protected/private наследования даже в одиночном.
B>Можно ли все случаи и возможности множ.наследования в проектировании решить с одним одиноночным и n колличеством интерфейсов ?
B>Может где-то уже тут это обсуждалось... Интересно же знать,что думают учёные по этому поводу

Однако Вам ни кто не мешает использовать композицию классов. И вообще множественное наследование очень трудно для восприятия.
Re: Зачем отказались от множественного наследования в С#?
От: last_hardcoder  
Дата: 02.08.06 06:16
Оценка: -3 :)
Здравствуйте, binarycode, Вы писали:

B>Вот ответьте мне опытные, зачем отказались от множественного наследования ? Какова причина ?

B>Зачем убрали возможность public/protected/private наследования даже в одиночном.
B>Можно ли все случаи и возможности множ.наследования в проектировании решить с одним одиноночным и n колличеством интерфейсов ?
B>Может где-то уже тут это обсуждалось... Интересно же знать,что думают учёные по этому поводу

Да потому, что Хейлсберг так погрузился в паскакаль, что пропустил мимо ушей такие штуки, как policy, mixins, технику downcasting'а к шаблонным аргументам. Посуществу получилось Delphy II.
Re[2]: Зачем отказались от множественного наследования в С#?
От: dr.Chaos Россия Украшения HandMade
Дата: 02.08.06 08:54
Оценка: +1
Здравствуйте, sergey_mosyakov, Вы писали:

_>Здравствуйте, binarycode, Вы писали:


B>>Вот ответьте мне опытные, зачем отказались от множественного наследования ? Какова причина ?

B>>Зачем убрали возможность public/protected/private наследования даже в одиночном.
B>>Можно ли все случаи и возможности множ.наследования в проектировании решить с одним одиноночным и n колличеством интерфейсов ?
B>>Может где-то уже тут это обсуждалось... Интересно же знать,что думают учёные по этому поводу

_>Однако Вам ни кто не мешает использовать композицию классов. И вообще множественное наследование очень трудно для восприятия.


Хм... Программирование вообще трудно для восприятия, особенно неподготовленным людям. Перемещение в трех измерениях особенно трудо человеку, который обычно в плоскости ходит , но вроде желания стать пилотом это не отбивает.
Побеждающий других — силен,
Побеждающий себя — Могущественен.
Лао Цзы
Re: Зачем отказались от множественного наследования в С#?
От: dr.Chaos Россия Украшения HandMade
Дата: 02.08.06 08:59
Оценка: +1 -2
Здравствуйте, binarycode, Вы писали:

B>Вот ответьте мне опытные, зачем отказались от множественного наследования ? Какова причина ?

B>Зачем убрали возможность public/protected/private наследования даже в одиночном.
B>Можно ли все случаи и возможности множ.наследования в проектировании решить с одним одиноночным и n колличеством интерфейсов ?
B>Может где-то уже тут это обсуждалось... Интересно же знать,что думают учёные по этому поводу

Полагаю чтоб упростить себе жизнь и не париться.

Эти идиомы не столь часто используемы в программах штамповках, где главное скорость разработки, а как оно там сделано уже "хрен с ним" главное чтоб работало.

ЗЫ Уважаемые С#-ники ничего личного, среди вас я уверен есть гуру ООП и ООД, это скорее относиться к назначению языка.
Побеждающий других — силен,
Побеждающий себя — Могущественен.
Лао Цзы
Re: Зачем отказались от множественного наследования в С#?
От: astral_marine  
Дата: 02.08.06 09:39
Оценка: 1 (1)
Здравствуйте, binarycode, Вы писали:

B>Вот ответьте мне опытные, зачем отказались от множественного наследования ? Какова причина ?


Мнение сотрудников из Майкрософт
http://blogs.msdn.com/csharpfaq/archive/2004/03/07/85562.aspx
http://blogs.msdn.com/nickmalik/archive/2004/12/31/344966.aspx
Re[2]: Зачем отказались от множественного наследования в С#?
От: Кодёнок  
Дата: 02.08.06 10:06
Оценка:
Здравствуйте, McSeem2, Вы писали:

B>>Вот ответьте мне опытные, зачем отказались от множественного наследования ? Какова причина ?


MS>И правильно сделали. Жаль, что вообще не запретили наследование. Ибо наследование в программировании компьютеров — это самая противоестественная вещь, которую только можно придумать. Достаточно вспомнить недавний спор на РСДН о том, кто от кого должен наследоваться — квадрат от прямоугольника или наоборот(!) — Это же просто цирк с конями сферическими в вакууме!


MS>Инапсуляция — да! Полиморфизм — 256 раз да! Наследование — отказать. Ибо нету такой штуки в природе, ну нету. Точнее есть, но она совсем из другой оперы.


Инкапсуляция, полиморфизм, наследование — всё это чисто умственные операции, в природе их нет.

Наследование — неверное название, правильное — что-то вроде конкретизаци, т.е. обратное обобщению.
Re[3]: Зачем отказались от множественного наследования в С#?
От: Nikolay_Ch Россия  
Дата: 02.08.06 10:17
Оценка: +1
Кё>Инкапсуляция, полиморфизм, наследование — всё это чисто умственные операции, в природе их нет.
Инкапсуляция — это любое живое существо — которое иикапсулирует обработку сигналов (например чтобы заставить собаку сидеть не надо подходить к ней и расставлять ей ноги и т.п. — достаточно сказать — "Сидеть"). Желудок. Там живут кучи бактерий, которых не видно, но которые тем не менее перерабатывают пищу.
Наследование — это пример всех иерархии видов животных, которые выстроили биологи.
С полиморфизмом сложнее. Но и тут можно найти пример. Одно и то-же желание есть заставит по разному действовать разных животных.
Re[4]: Зачем отказались от множественного наследования в С#?
От: Кодёнок  
Дата: 02.08.06 10:28
Оценка: -1
Здравствуйте, Nikolay_Ch, Вы писали:

Кё>>Инкапсуляция, полиморфизм, наследование — всё это чисто умственные операции, в природе их нет.

N_C>Инкапсуляция — это любое живое существо — которое иикапсулирует обработку сигналов (например чтобы заставить собаку сидеть не надо подходить к ней и расставлять ей ноги и т.п. — достаточно сказать — "Сидеть"). Желудок. Там живут кучи бактерий, которых не видно, но которые тем не менее перерабатывают пищу.
N_C>Наследование — это пример всех иерархии видов животных, которые выстроили биологи.
N_C>С полиморфизмом сложнее. Но и тут можно найти пример. Одно и то-же желание есть заставит по разному действовать разных животных.

Подумай ещё

Ты провел определенные операции и создал у себя в воображении модель, где есть наследование или инкапсуляция.

Но в природе этого НЕТ
Re[5]: Зачем отказались от множественного наследования в С#?
От: Nikolay_Ch Россия  
Дата: 02.08.06 10:37
Оценка:
Кё>Подумай ещё
Перечитай еще раз мой пост.

Кё>Ты провел определенные операции и создал у себя в воображении модель, где есть наследование или инкапсуляция.

Какая модель? Когда корове хочется есть, она есть траву, когда волку охота пожевать он идет и задирает эту корову. Вот тебе полиморфизм одного и того-же чувтства.

Инкапсуляция — вообще самое простое. Ты ешь пищу и перерабатываешь ее в энергию. Что скрывается за этим процессом — тебя самого не интересует.

Ну а самое простое — наследование. Достаточно посмотреть на эволюцию видов, чтобы увидеть его. Все-же произошли от простых комочкой слизи, плавающей в океане. Постепенно развивая и наследуя характеристики. Ты сам наследовал признаки от своих родителей.

Кё>Но в природе этого НЕТ

Но оно есть Просто надо отвлечься от программирования и посмотреть вокруг.
Re[5]: Зачем отказались от множественного наследования в С#?
От: Ramzes_ Россия http://ramzes.ws/
Дата: 02.08.06 10:44
Оценка: +6
Интересно, а причем тут есть это в природе, или нет. Понятие искусственности/естественности метода не мало влияет на его практическую ценность. Программист он не биолог, все-таки. А кто скажет, что у наследования нет никакой практической ценности, в того кину камень. А вот у множественного наследования, имхо, весьма сомнительная практическая ценность. Чтобы ее осознать, нужно наверное пример, реализовать который с помощью множественного наследования было бы намного проще и нагляднее, чем с помощью других методов. Я такой пример привести не могу, может может кто другой?
Re[4]: Зачем отказались от множественного наследования в С#?
От: Whistler Россия Блог на GotDotNet.ru
Дата: 02.08.06 10:46
Оценка:
Здравствуйте, Nikolay_Ch, Вы писали:

N_C>С полиморфизмом сложнее. Но и тут можно найти пример. Одно и то-же желание есть заставит по разному действовать разных животных.


Полиморфизм — в биологии (от греч. polymorphos — многообразный) — способность некоторых организмов существовать в состояниях с различной внутренней структурой или в разных внешних формах.

Внешний (а также внутренний, например биохимический) П. может быть обусловлен как внутривидовыми генетическими различиями. С другой стороны возможен П., при котором организмы с практически идентичным геномом в зависимости от внешних условий приобретают различные фенотипические формы.


Wikipedia
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.