Форум: "Прочее";
Текущий архив: 2016.04.17;
Скачать: [xml.tar.bz2];
Внизinterface/implementation Найти похожие ветки
← →
Kerk © (2015-08-02 11:50) [0]А знаете что было бы забавно?
Вот у каждого юнита есть секции interface и implementation.
Нужно чтоб интерфейсу юнита можно было подцеплять разные implementation.
В других языках, где есть модули, такое встречается, но как-то мне в голову не приходило применить это к паскалю. Это изменило бы очень многое в подходах к программированию на паскале.
← →
Германн © (2015-08-02 12:23) [1]Подцепляй через {$I
← →
Kerk © (2015-08-02 12:28) [2]Это не то. Во время выполнения через {$I модуль не подцепишь.
← →
Dimka Maslov © (2015-08-02 13:19) [3]Делаем один модуль в секции interface которого только абстрактные классы. Затем плодим кучу модулей, где абстрактные методы перекрываются. Не то?
← →
Игорь Шевченко © (2015-08-02 15:55) [4]
> Это изменило бы очень многое в подходах к программированию
> на паскале.
Ты изобрел паттерн фабрика ? Поздравляю.
← →
Kerk © (2015-08-02 15:58) [5]Причем тут фабрика-то. Это скорее полиморфизм, но не на уровне класса, а на уровне всего модуля.
← →
Inovet © (2015-08-02 17:29) [6]> [5] Kerk © (02.08.15 15:58)
Второй слой полиморфизма.
← →
Германн © (2015-08-03 00:58) [7]
> Kerk © (02.08.15 12:28) [2]
>
> Это не то. Во время выполнения через {$I модуль не подцепишь.
>
А что тогда то?
← →
Юрий Зотов © (2015-08-03 02:29) [8]> Kerk © (02.08.15 15:58) [5]
> Причем тут фабрика-то.
1. Объявляем интерфейс.
2. Делаем кучу реализующих его классов (для наглядности - каждый класс в своем модуле, хотя это и не обязательно). Понятно, что каждый класс может реализовывать этот интерфейс по-своему.
3. Делаем фабрику с параметром. В зависимости от этого параметра фабрика возвращает экземпляр того или иного класса, но мы всегда получаем от нее ссылку на интерфейс.
4. Получили искомое (run-time варианты implementation).
← →
Cobalt © (2015-08-05 09:20) [9]Такое реализовано давно, см папку XML в исходниках Дельфи.
с 3-мя реализациями (MSXSML, Open XML и Xerces XML в 7-ке)
← →
icWasya © (2015-08-05 10:25) [10]А что тогда что?
Человек хочет Оберон.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2016.04.17;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.002 c