interface FileSystemInterface {
public function write($file, $data);
public function read($file);
public function setFileAccess($file, $access);
}
class CloudFileSystem implements FileSystemInterface {
public function write($file, $data) {
// открываем соединение с облаком, пишем данные
}
public function read($file) {
// открываем соединение с облаком, возвращаем данные
}
public function setFileAccess($file, $access) {
throw new LogicException("Method not allowed at CloudFileSystem");
}
}
Это какой то ужас. Нулевой рейд на сервере?
Возможно. Raid или LVM или все вместе.
"ладно, убедили. Тогда, получается, что интерфейс должен содержать объявления САМЫХ глобальных методов, без которых класс не имеет смысла?"
Похоже на правду.