Comments 10
Мы не слышали об упоминаний контрактов. Аналогие в реальном мире нет. Продоёте?
Вычитывайте тексты, пожалуйста.
В коде комментарии к пред- и постусловиям перепутаны местами. А ещё в PHP переменные начинаются с символа $
.
А ещё throw Expection(...)
должно быть throw new Exception(...)
.
if (file.size < 5000) {
throw Expection('File size is more than 5mb');
}
Многовато ошибок для трех строк. Переменные начинаются с $, не хватает new, не Expection, а Exception, логика неверная, if проверяет, что размер меньше 5000, а не больше
Пример проверки на состояние:
Пример куда-то потерялся.
В целом статья неплохая, но ошибки очень мешают воспринимать информацию
Очень не привычно когда пишут не верный синтаксис :)
Если проводить аналогию с реальным миром то контракт, как докумен, сам не следит за исполнением обязательств описанных в нем, по сему это больше похоже на интерфейс, а не на класс, который содержит реализацию.
Контракты. Что это и с чем едят. Часть 1