Подскажи, пожалуйста, у тебя есть такой кусок в разделе "Принцип открытости/закрытости (Open-closed)":
public function setSource(IOrderSource $source)
{
$this->source = $source;
}
Тут мы для получаемого объекта $source устанавливаем тип интерфейса IOrderSource.
В $source дожен быть объект, который наследует этот интерфейс, у меня так:
class ServiceEmail implements IOrderSource {}
Но если я потом устанавливаю его так
$message->setService(new ServiceEmail());
То получаю ошибку
Uncaught TypeError: Argument 1 passed to
Service\Notification::setService() must be an instance of
Service\IOrderSource,
instance of
Service\ServiceSMS
given
То есть, ему не нравится то, что тип не совпадает с указанным
Правильно ли указывать в подсказке типа интерфейс? Или я что-то не так делаю?
Меня больше удивляет то, что в системе до сих пор нет жеста свайпом четырьмя пальцами вниз для сворачивания окна. Только сторонними приложениями делается.
Уже представляю как какой-нибудь стартап в духе Uber запустит миллионы таких автомобилей по всему миру. Вышел на дорогу, нажал на кнопку на часах, через пол минуты перед тобой останавливается автомобиль и везет тебя в одиночестве куда нужно. Идеально.
Эти автомобили сами будут заезжать на станции подзарядки и в парки для чистки салона. Вот оно, самое настоящее будущее :)
Ждем релиз Copilot X. Там все будет.
Подскажи, пожалуйста, у тебя есть такой кусок в разделе "Принцип открытости/закрытости (Open-closed)":
Тут мы для получаемого объекта $source устанавливаем тип интерфейса IOrderSource.
В $source дожен быть объект, который наследует этот интерфейс, у меня так:
Но если я потом устанавливаю его так
То получаю ошибку
То есть, ему не нравится то, что тип не совпадает с указанным
Правильно ли указывать в подсказке типа интерфейс? Или я что-то не так делаю?
Еще жутко неудобно, что Command+Q сразу же закрывает приложение, иногда даже ничего не спросив. Тоже лечится сторонним софтом с задержкой на закрытие.
Меня больше удивляет то, что в системе до сих пор нет жеста свайпом четырьмя пальцами вниз для сворачивания окна. Только сторонними приложениями делается.
Эти автомобили сами будут заезжать на станции подзарядки и в парки для чистки салона. Вот оно, самое настоящее будущее :)