C++ и "mixins": разъясните на пальцах, в чем полезность?

Тема в разделе "LANGS.C", создана пользователем varnie, 15 окт 2008.

  1. varnie

    varnie New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2005
    Сообщения:
    1.785
    здравствуйте все~

    вчитывалса в сабж, но прозрение (пока) не наступило. кто-нибудь пояснит, в чем преимуществa mixins в С++ и какие проблемы они помогают решить? что это за случаи, когда обычное наследование не помогает..? паре наглядных примеров был бы признателен.



    благодарю.
     
  2. green

    green New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2003
    Сообщения:
    1.217
    Адрес:
    Ukraine
    varnie
    А что ты читал?
    AFAIK, minin - это парадигма, которая в С++ реализуется через наследование, так что противопоставлять их некорректно...
     
  3. varnie

    varnie New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2005
    Сообщения:
    1.785
    green
    да, я не так понял. верно все пишешь. но я недопонимаю область применения этой парадигмы. не свидетельствует ли это о кривом дизайне в целом?
    т.е. я рассматриваю микинс как заплатку на кривом дизайне.
    если не так, переубеди меня? спасибо.
     
  4. green

    green New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2003
    Сообщения:
    1.217
    Адрес:
    Ukraine
    varnie
    Почему?

    Mixins - это один из вариантов code reusing в ООП - своего рода вертикальная декомпозиция по принципу "имеет функциональность", а не "является".
    mixin-парадигма просто более прагматична в том смысле, что иерархия классов не обязательно должна в точности отражать смысловые отношения между этими классами - главное результат. Наверно именно этот момент тебя смущает?
     
  5. varnie

    varnie New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2005
    Сообщения:
    1.785
    green
    да, именно этот момент.