Вопросы с тегом «polymorphism»

4
Заменить Условное на Полиморфизм надлежащим образом?
Рассмотрим два класса Dogи Catкак в соответствии с Animalпротоколом (с точки зрения языка программирования Swift. Это было бы интерфейс в Java / C #). У нас есть экран со смешанным списком собак и кошек. Есть Interactorкласс, который обрабатывает логику за кулисами. Теперь мы хотим предоставить пользователю подтверждение, когда он хочет …

4
Замена например Java?
Так что я довольно новичок в программировании в реальном мире (за пределами академических проектов) и наткнулся на множество постов, в которых говорится, что использование instanceof- это плохая вещь, чтобы определить, к какому классу относится данный объект. Моя ситуация такова, что у меня есть три класса, базовый класс продукта, один, который …

4
Шаблон проектирования для полиморфного поведения при разрешении разделения библиотеки
Скажем , у меня есть иерархия Itemклассов: Rectangle, Circle, Triangle. Я хочу иметь возможность рисовать их, поэтому моя первая возможность - добавить виртуальный Draw()метод к каждому: class Item { public: virtual ~Item(); virtual void Draw() =0; }; Однако я хочу разделить функциональность рисования на отдельную библиотеку Draw, в то время …

3
Два компонента, предлагающие одинаковую функциональность, требуемую разными зависимостями
Я создаю приложение на PHP, используя Zend Framework 1 и Doctrine2 в качестве слоя ORM. Все идет хорошо. Теперь я заметил, что и ZF1, и Doctrine2 поставляются с собственной реализацией кэширования и полагаются на нее. Я оценил и то и другое, и хотя у каждого есть свои плюсы и минусы, …

1
Неявные и явные интерфейсы
Я думаю, что понимаю реальные ограничения полиморфизма во время компиляции и полиморфизма во время выполнения. Но каковы концептуальные различия между явными интерфейсами (полиморфизм во время выполнения. Т.е. виртуальные функции и указатели / ссылки) и неявными интерфейсами (полиморфизм во время компиляции. Т.е. шаблоны) . Я думаю, что два объекта, которые предлагают …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.