Разделение интерфейса . . . Хм, это звучит не так уж плохо, не так ли? Похоже, это как-то связано с разделением . . . МММ, разделяемся . . . межфазные границы. Мне просто…
ООП
Принцип подстановки Барбары Лисков
Лисков-что?? Эта штука звучит как что-то прямо из учебника органической химии. Это может даже заставить вас пожалеть о том, что вы выбрали разработку программного обеспечения в качестве карьеры, потому что…
Принцип открытости/закрытости
Я должен сказать, что тот, кто придумал определения этих принципов, конечно, не думал о менее опытных разработчиках. То же самое происходит и с принципом “открыто-закрыто”, и те, до кого…
Принцип единственной ответственности
Писать компьютерные программы – это очень весело. Если только вам не приходится работать с чужим кодом. Если вы проработали профессиональным разработчиком более трех дней, вы знаете, что наша работа…
Паттерн проектирования Спецификация
Цель Строит четкую спецификацию бизнес-правил, где объекты могут быть проверены. В составе класса спецификации существует один метод, называемый isSatisfiedBy ,который возвращает либо true, либо false в зависимости от того, удовлетворяет ли данный объект…
Условные фильтры в Laravel
Вам когда-нибудь приходилось применять фильтры к запросу, только когда пользователь действительно применяет их? Метод Laravel query builder when() специально для вас. Недавно я столкнулся с этой же проблемой, работая над…
Автоматическая проверка моделей в Laravel
В большинстве проектов валидация моделей может осуществляться с использованием FormRequest объектов. И это правильно. Либо проверка может быть реализована в самом контроллере. Что, очевидно, часто не несет ничего…
IoC контейнер и внедрение зависимостей. Как это работает на примере Laravel и PHP-DI? Взгляд изнутри.
Вы начинаете работать с Laravel или с любым другим современным PHP-фреймворком в целом? Или вы уже используете фреймворк, который уже поддерживает инъекцию зависимостей и имеет контейнер IoC, но вы хотите понять, как…
Отслеживание устройств в Laravel
Laravel Device Tracking – это пакет от Ivano Matteo, который позволяет отслеживать различные устройства, используемые пользователями вашего приложения. Этот пакет можно использовать в качестве основы для таких функций, как обнаружение пользователей…
Рефакторинг Устаревшего Кода
Одна из первых вещей, которые вы обычно хотите сделать при работе с устаревшим кодом – это написать все правильно тесты. Таким образом, вы можете позже внести изменения в код…