Ответы пользователя по тегу ООП
  • Является ли для веб-сайта регистрация и авторизация частью абстракции пользователя?

    TheHorse
    @TheHorse
    C другой стороны, регистрация и авторизация это то, что нужно только для пользователя. а по сему выделять ее как отдельную систему особого смысла нет.

    Склоняюсь к тому, что эти системы должны быть подсистемами системы работы с пользователями.
    Ответ написан
    Комментировать
  • Матричный полиморфизм?

    TheHorse
    @TheHorse
    Реализовываем все функции Ai:
    function() A1() {};
    function() A2() {};
    function() A3() {};


    Далее берем указатели на все эти функции и записываем их в Pi;
    Далее берем матрицу MхN и записываем в соответствующие i,j индекс нужной функции.

    После чего, по i,j берем указатель на нужную функцию и выполняем ее.
    Как-то так.

    Можно реализовать без указателей, сделав одну функцию A(i) которая по нужному i выполняет нужную функцию.

    P. S. Быть может, я свято верю, функции похожи, и отличаются лишь параметрами, что может улучшить реализацию.
    Ответ написан
    2 комментария
  • Определение нарушения уровня абстракции?

    TheHorse
    @TheHorse
    Нарушением уровня абстракций, насколько я понимаю то, что вы вкладываете в понятие уровня абстракции, будет факт несогласованности интерфейса класса. Если у вас есть методы из названий которых следует, что они относятся к разным уровням абстракции, вы нарушили абстракцию класса. Другими словами, если в одном классе есть методы getCount и getCountOfFlat — на лицо нарушение абстрагирования. Появление таких методов вероятно при наличии наследования, которое я считаю исключением из правил.

    На сколько я понимаю, из курса ТСПП, уровень абстракции — абстрактная величина, и не может быть вычислена.

    Абстракция определяется исключительно интерфейсом класса, и не может быть нарушена за пределами этого класса.

    Декомпозиция логики работы класса, определяет только ее логику, и косвенно указывает на то, каким будет интерфейс. Задачи, которые решаются с помощью этого класса могут нарушать только собственные абстрагирования, но, теоретически, не могут нарушать уровень абстракции готовых классов.

    P. S. Никогда не встречал понятие уровня абстракции за пределам контекста декомпозиции, может не правильно понял, следовательно, не правильно ответил :(
    Ответ написан
    6 комментариев