Czy C # ma wielokrotne dziedziczenie? [Zamknięte]
Natknąłem się na liczne argumenty przeciwko włączeniu wielokrotnego dziedziczenia w C #, z których niektóre obejmują (argumenty filozoficzne na bok):
Wielokrotne dziedziczenie jest zbyt skomplikowane i często niejednoznaczneNie jest to konieczne, ponieważ interfejsy zapewniają coś podobnegoKompozycja jest dobrym substytutem tam, gdzie interfejsy są nieodpowiedniePochodzę z tła C ++ i brakuje mi mocy i elegancji wielokrotnego dziedziczenia. Chociaż nie nadaje się do wszystkich projektów oprogramowania, istnieją sytuacje, w których trudno zaprzeczyć jego użyteczności w stosunku do interfejsów, kompozycji i podobnych technik OO.
Czy wykluczenie wielokrotnego dziedziczenia mówi, że programiści nie są wystarczająco inteligentni, aby mądrze z nich korzystać i nie są w stanie poradzić sobie ze złożonością, gdy się pojawiają?
Osobiście chciałbym wprowadzić wielokrotne dziedziczenie do C # (być może C ##).
Uzupełnienie: Chciałbym wiedzieć z odpowiedzi, które pochodzą z pojedynczego (lub proceduralnego tła), z wielokrotnego tła dziedziczenia. Często odkrywałem, że programiści, którzy nie mają doświadczenia z wielokrotnym dziedziczeniem, często domyślnie używają niepotrzebnego argumentu dziedziczenia wielokrotnego tylko dlatego, że nie mają żadnego doświadczenia z paradygmatem.