чт, 15 февраль 2024, 19:00 (GMT+03:00)
Россия, Санкт-Петербург, Failover Bar, 4-я Советская, д.7
Бесплатно
Есть трансляция

Теги:

Программа:

  • Все оттенки асинхронности — Кирилл Несмеянов
  • Полиморфизм в современном PHP — Валентин Удальцов, автор каналов Пых и PHP Point
  • Переносимое окружение для разработки и тестов — Дмитрий Елисеев

Расписание

Все оттенки асинхронности

Кирилл Несмеянов

Многие слышали об асинхронности, но не многие применяли. А те, кто применяли — почти всегда используют готовые инструменты. С приходом PHP 8.1 в язык добавили Fiber API, которые изменяют подходы к разработке ПО, но не только лишь все смотрят в завтрашний день, понимая насколько они могут изменить "правила игры". В докладе предлагается "изобрести" асинхронность заново, и задуматься о том, что подходы к разработке с использованием EventLoop, используемые в Revolt/ReactPHP/Amp/etc с приходом файберов морально устарели. А может и нет... Решать вам =)

Полиморфизм в современном PHP

Валентин Удальцов

На первый взгляд может показаться, что в PHP есть только полиморфизм подтипов. Однако если вооружиться современными инструментами и напильником, можно получить все три вида полиморфизма. На докладе мы глубоко прокачаем понимание типизации. Обсудим в сотый раз LSP, разберёмся с вариантностью (declaration-site и call-site), реализуем простейшую перегрузку методов и поймём, почему её нет в языке. Будет познавательно и полезно не только в контексте PHP.

Переносимое окружение для разработки и тестов

Дмитрий Елисеев

Про облегчение деплоя сказано много. Но про локальный стенд для разработки и тестов говорить часто боятся. Уходит много сил на перекидывание ключей доступа к песочницам сторонних сервисов и дампов данных от одних программистов другим. Пока Кирилл берёт быка за Фаберже, исправим эту оплошность :) Расскажем, как выстроить удобное локальное окружение для разработки и тестов при командной работе с коллегами или с собой со второго компьютера. Как обмениваться демо-данными, подключать и эмулировать сторонние сервисы, разрабатывать отдельные микросервисы без необходимости поднимать соседние сервисы и как тестировать проекты с базами данных и очередями.