Null Object - поведінка за замовчуванням
Замінює null безпечним об'єктом із тим самим інтерфейсом і "порожньою" поведінкою. Прибирає перевірки на null - і де він може приховати справжню проблему.
Почніть вводити, щоб шукати по статтях, вакансіях, компаніях, проєктах, ресурсах, пакетах, подіях і користувачах.
Observer організовує реакції на події без жорстких зв'язків: об'єкт сповіщає підписників про зміну, не знаючи, хто вони.
Коли на одну дію (оплата замовлення) треба навісити кілька побічних реакцій (лист, вебхук, аналітика), вшивання їх прямо в код дії робить його громіздким і прив'язаним до конкретних реакцій. Додати нову - означає правити вихідну логіку.
Об'єкт лише публікує подію про факт. Слухачі підписуються на неї й виконують побічні дії незалежно. Нову реакцію додаєш новим слухачем, не торкаючись джерела події. У Laravel це Events, Listeners і Subscribers.
class OrderPaid
{
public function __construct(public Order $order) {}
}
class SendReceipt
{
// У Laravel 11+ слухач автоматично знаходиться за типом аргументу handle().
public function handle(OrderPaid $event): void
{
Mail::to($event->order->email)->send(new ReceiptMail($event->order));
}
}
// Диспатч події (хелпер event() або статичний метод OrderPaid::dispatch()):
event(new OrderPaid($order));
// Явна реєстрація, якщо авто-discovery вимкнено:
Event::listen(OrderPaid::class, SendReceipt::class);
// У тестах події легко фейкати:
Event::fake();
event(new OrderPaid($order));
Event::assertDispatched(OrderPaid::class);
19 / 34
Замінює null безпечним об'єктом із тим самим інтерфейсом і "порожньою" поведінкою. Прибирає перевірки на null - і де він може приховати справжню проблему.
Пропускає дані через серію кроків, де кожен трансформує вхід і передає далі. Готовий Illuminate\Pipeline\Pipeline та його зв'язок із middleware.
Розробка та підтримка backend-сервісів і API на PHP та Laravel з повним циклом володіння фічами від дизайну до моніторингу. Ключове завдання - інтеграція агентних AI-workflow (LLM-агенти, tool calling) у продукт і внутрішні інструменти, а також менторство інших інженерів. Вимоги: 6+ років PHP, 4+ роки з Laravel, досвід GenAI, знання MySQL/PostgreSQL, Docker та хмарних платформ, робота за часовим поясом EDT.
Full Stack розробник розвиватиме та підтримуватиме вебпродукти FinTech-компанії: доопрацьовуватиме backend і frontend, функціонал особистого кабінету клієнта, інтеграції через REST API з платіжними та ідентифікаційними сервісами. Ключовий стек: PHP, Laravel, Vue.js (Vue Router, Pinia або Vuex), MySQL/PostgreSQL, Docker, Git. Вимоги: понад 3 роки комерційного Full Stack досвіду, робота з наявним кодом, участь у code review та розборі інцидентів.
Розробник PHP/Laravel для роботи на фулстеку: розробка та підтримка бекенду на PHP/Laravel і фронтенду на JavaScript/HTML/CSS. Основний стек: PHP, Laravel, MySQL, REST API, Git. Вимоги: 1+ років досвіду в веб-розробці, хороше знання PHP, базово-проміжна рівень Laravel, розуміння JavaScript, HTML/CSS, REST API та OOP. Менторство від досвідчених розробників, робота з реальними комерційними проєктами.
Bagisto — це платформа для електронної комерції, побудована на Laravel. Вона надає готове рішення для створення та управління інтернет-магазинами з підтримкою каталогу товарів, замовлень, платежів та клієнтів.