State - поведінка залежно від стану
Змінює поведінку об'єкта залежно від стану, прибираючи каскади if. Замовлення, підписки, оплати та пакет spatie/laravel-model-states.
Почніть вводити, щоб шукати по статтях, вакансіях, компаніях, проєктах, ресурсах, пакетах, подіях і користувачах.
Strategy виносить взаємозамінні алгоритми в окремі класи за спільним інтерфейсом, щоб підставляти їх без зміни клієнта.
Коли одну дію можна виконати різними способами (тарифи, доставка, знижки, фільтри), вибір через if/switch робить сервіс громіздким. Кожен новий варіант - правка цього сервісу й ризик зачепити сусідні гілки.
Кожен алгоритм інкапсулюється в окремому класі зі спільним інтерфейсом. Сервіс працює з інтерфейсом і не знає деталей. У Laravel зручно обирати стратегію через контейнер або конфіг - тоді заміна логіки відбувається без правок сервісу.
interface PriceStrategy
{
public function calc($order);
}
class RetailPrice implements PriceStrategy
{
public function calc($order)
{
return $order->total;
}
}
class VipPrice implements PriceStrategy
{
public function calc($order)
{
return $order->total * 0.9;
}
}
class OrderService
{
public function __construct(private PriceStrategy $strategy) {}
public function total($order)
{
return $this->strategy->calc($order);
}
}
app()->bind(PriceStrategy::class, VipPrice::class);
if/switch; кожен алгоритм тестується локально.match.21 / 21
Змінює поведінку об'єкта залежно від стану, прибираючи каскади if. Замовлення, підписки, оплати та пакет spatie/laravel-model-states.
Найпідступніше джерело зайвих запитів - список із однаковою кнопкою на кожній картці, де кожна тихо робить свій SELECT. Розбираємо, як per-request реєстр збирає сотні однакових перевірок в один запит, чому саме scoped(), і той самий патерн поза базою.
Розробник PHP/Laravel для фінтех-проекту на мікросервісній архітектурі. Відповідатиме за підтримку та покращення кодової бази, оптимізацію продуктивності, роботу з MySQL, Redis, черг. Потрібні 2+ роки комерційної розробки, 1+ років PHP (Laravel), розуміння OOP та SOLID, мінімальні знання HTML/CSS/JS.
Розробник, який використовує Claude Code для реалізації фіч та виправлення багів на B2B2C-платформі. Стек: PHP/Laravel (бекенд), Vue.js (фронтенд), REST API. Вимоги: базове розуміння веб-розробки, знайомство з PHP/JavaScript на рівні читання коду, практична робота з Git та AI-інструментами для кодингу, англійська B1+. Фокус на вмінні формулювати завдання для AI, перевіряти результати та інтегрувати в кодову базу.
PHP-розробник для розробки компонентів і модулів на Laravel та Yii2. Потрібні знання PHP, MySQL, ООП, патернів проектування та інтеграція із зовнішніми сервісами. Гнучкий графік, можливість професійного зростання.
Bagisto — це платформа для електронної комерції, побудована на Laravel. Вона надає готове рішення для створення та управління інтернет-магазинами з підтримкою каталогу товарів, замовлень, платежів та клієнтів.