Публикации по теме 'double-dispatch'
Двойная отправка в Ruby с уточнениями
Двойная отправка в Ruby с уточнениями
Уточнения - это относительно новая функция Ruby. Они действительно классные, но на момент написания я не мог найти ничего интересного из того, что с ними делали люди, поэтому вот вам предложение:
Вещь, которой, по-видимому, не хватает Ruby, - это простой и сдержанный способ реализации двойной диспетчеризации. Это неудивительно, поддержка двойной отправки не является распространенной в языках с утиным типом, но уточнения могут нам помочь. Они..
Прощай, геттеры и сеттеры - Часть II
Итак, в моей предыдущей статье мы увидели, как мы можем сохранить инкапсуляцию - один из самых фундаментальных принципов объектно-ориентированного дизайна (OOD) - «поместив поведение там, где находятся данные».
Но теперь, когда мы действительно начинаем использовать эти красиво инкапсулированные объекты, мы сталкиваемся с проблемой, которая кажется проблемой, и нам, в конце концов, потребуется доступ к тем свойствам, которые мы так аккуратно инкапсулировали. Почему? Что ж, мы хотим..
Вопросы по теме 'double-dispatch'
c ++ двойная отправка с зеркальными иерархиями
следующие иерархии классов представляют абстрактные обработчики ресурсов и иерархии ресурсов. Оба имеют интерфейсы как базовые классы. Теперь представьте, что вы пишете систему, в которой вы можете реализовать несколько конкретных систем ресурсов...
453 просмотров
schedule
07.04.2023
Перегрузка метода Java + двойная диспетчеризация
Кто-нибудь может подробно объяснить, почему перегруженный метод print(Parent parent) вызывается при работе с экземпляром Child в моем тестовом фрагменте кода?
Какие-либо особенности виртуальных методов или перегрузки/разрешения методов в Java...
4884 просмотров
schedule
01.03.2023
Как работает двойная отправка в шаблоне «Посетитель»?
Я изучал другие вопросы, связанные с шаблоном посетителя, но не мог понять реализацию двойной отправки в шаблоне посетителя.
Перейдите по ссылке Шаблон посетителя .
Как работает двойная отправка в шаблоне «Посетитель»?
11436 просмотров
schedule
06.03.2023
Реализация двойной диспетчеризации в C#, расширяемая как для функций, так и для объектов, с которыми можно работать.
Я ищу способ реализовать двойную отправку, которую можно расширить как для методов, так и для классов.
До сих пор я использовал в основном три подхода:
традиционный процедурный подход с отличным switch (легко добавлять новые функции, сложно...
686 просмотров
schedule
07.03.2023
шаблонная двойная диспетчеризация с использованием указателей на функции
Я пытаюсь создать собственный механизм столкновений для академических целей и застрял на общей проблеме программирования на C ++. У меня уже есть вся геометрия, которая работает правильно, и тест на столкновение также работает правильно.
Движок...
261 просмотров
schedule
14.03.2023
Двойная диспетчеризация и универсальность Java
Мне нужно расширить алгоритм, который широко использует шаблон двойной отправки.
Этот алгоритм манипулирует некоторыми разными классами данных (множеством классов), и для каждого класса требуется одно и то же расширение.
Я не хочу изменять ни...
517 просмотров
schedule
08.05.2023
Как я могу реализовать двойную отправку, если я заранее не знаю всех классов?
У меня есть базовый класс с (потенциально) множеством подклассов, и я хотел бы иметь возможность сравнивать любые два объекта базового класса на предмет равенства. Я пытаюсь сделать это, не вызывая кощунственное ключевое слово typeid.
#include...
607 просмотров
schedule
10.05.2023