Pull to refresh
0
0
Переслегин Дмитрий @dmitry_dvp

Пользователь

Send message
Это какие такие стандарты?

присмотритесь к структуре: ваш DbCacheStorage органичен использованием лишь одного конкретного типа СУБД. Тоже самое про наследование от PDO.

Если уж DB, то AbstractDB и набор потомков для каждого типа DB.
Если уж CacheStorage, то AbstractCacheStorage и набор потомков для разных типов хранилищь
Если уж DBCacheStorage, то параметризованный AbstractDB (т.е. умеющий работать с любой DB)
Оспорю, DbCacheStorage должен наследоваться от AbstractCacheStorage и инкапсулировать DB

логически: хранилище кэша это не расширенное новыми методами подключение к СУБД
Резюмируя:
В комментариях налицо недопонимание между людьми. Те, кто говорит об отсутствии необходимости пользоваться интерфейсами (в том числе я), говорят не о интерфейсах, как часть парадигмы ООП, а скорее о ключевых словах "implements" и "interface" в PHP5.

Интерфейс, как структурная составляющаяя, есть у любого класса, как неотъемлемая его часть.

Быть может имеет место утверждение: Интерфейсами пользуются все, но не все об этом догадываются?
но в приведенном примере множественное наследование не требуется
Вам же уже сказали, что эту же задачу можно также решить при помощи абстрактного класса
Вред от наличия интерфесов в PHP есть - ими пользуются и делают это неправильно, лишь усложняя сопровождение
Вы свою манеру изложения, ака "я самый умный" оставьте пожалуйста при себе.
Без вас знаю где и зачем используются интерфейсы, и как они "упрощают" сопровождение кода.
Бьюсь об заклад, что там, где вы их используете, у вас постоянно выскакивает "instanceof". Так? А о чем это говорит? А об этом читайте в книжках Мартина Фаулера
Вот я и говорю, что кроме SPL, реального применения почти нет
Поддерживаю, покажите (или расскажите) ... я кроме имплементации SPL-интерфейсов не нашел пока ни одного удобного (оправданного) применения, как ни старался
12 ...
10

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity