Схема агрегата Order в DDD с границами консистентности, Aggregate Root, объектами OrderItem, OrderStatus и Money, связанными с Customer и Product по ID.

Агрегаты в Domain-Driven Design часто понимают неправильно. Разработчик видит таблицы orders, order_items, products, users, переносит эти связи в объектную модель один к одному и считает, что теперь у…

dzen

Разработка правильной архитектуры для решения проблемы – это скорее искусство, чем наука, потому что это во многом зависит от понимания постановки проблемы, контекста и того, где, по нашему…

Что такое модульный тест Модульный тест – это категория тестов с самой высокой степенью детализации, основанная на тестовой пирамиде. Обычно он ориентирован на функциональность класса, функции или компонента пользовательского интерфейса…

Давайте посмотрим на такой совершенно простой пример, как этот: Начиная с PHPunit 9.0 и далее аннотация expectedException была признана устаревшей и удалена. Теперь мы можем сосредоточиться на существующих решениях….

TL;DR: из этого туториала вы узнаете, как построить и протестировать различные конечные точки RESTful API, созданного с помощью Laravel. Наш подход к достижению этой цели будет включать:: Настройка среды тестирования…

С последним выпуском minor Laravel, то есть v8.23.0, в построителе запросов Laravel был введен действительно интересный метод для ситуации, когда вы хотите получить единственную запись для соответствующих критериев. Но если…

Схема замены условных операторов if/switch полиморфизмом в PHP: вместо ветвлений используется общий Exporter и отдельные классы PdfExporter, DocxExporter и XlsxExporter.

Условные операторы — нормальная часть программирования. if, else, switch, match сами по себе не зло. Проблема начинается тогда, когда один и тот же выбор по типу начинает расползаться…

В каждом приложении Laravel существует много настроек, в значении которых указывается заданное кол-во секунд или минут. Например, session.lifetime или auth.password_timeout и другие. По умолчанию они все имеют какое…