Пустое наследование (типа BaseHtml => Html) - для чего?

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
fly2k
Сообщения: 155
Зарегистрирован: 2013.03.19, 05:31

Пустое наследование (типа BaseHtml => Html) - для чего?

Сообщение fly2k » 2016.01.16, 15:32

Здравствуйте!

Часто в самом Yii2 и некоторых расширениях встречается "пустое" наследование типа class Html extends BaseHtml, где Html совершенно пустой а весь код находится в BaseHtml.

Вопрос, наверное, больше из любопытства. Есть предположение, что это как то полезно для дальнейшей совместимости, но хотелось бы узнать конкретный замысел от проектировщиков.

Кроме того, лет 15 назад, когда пхп был совсем другим языком :) я, было, лично тестил кое какие вещи на производительность(надо было сильно), и, кроме всего прочего, выяснилось что сам факт подключения файлы(require или include) значительно увеличивал время выполнения. Тогда пришлось "склеивать" всё в один файл. Сейчас, очевидно, многое поменялось, но у меня какой то комплекс на эту тему остался :) Кто что думает? Есть у пхп какие то механизмы кеширования результатов собирания файлов и парсинга?

Спасибо!
// Yii2Rulez!

andrei.obuhovski
Сообщения: 610
Зарегистрирован: 2015.07.16, 10:50

Re: Пустое наследование (типа BaseHtml => Html) - для чего?

Сообщение andrei.obuhovski » 2016.01.16, 15:43

Чтобы можно было подменять его своей реализацией.
viewtopic.php?t=19107#p112269

Ответить