cover of episode Самописные инфраструктурные компоненты

Самописные инфраструктурные компоненты

2023/2/11
logo of podcast Пятиминутка PHP

Пятиминутка PHP

Shownotes Transcript

Тема этого выпуска: самописные инфраструктурные компоненты – зачем они нужны и чем не угодили Open Source аналоги, помимо фатального недостатка?

Отвечает Валентин Удальцов – автор телеграм канала Пых https://t.me/phpyh)

  • Пишет ли Валентин собственный фреймворк?

  • Что такое инфраструктурный компонент? Определение

  • Примеры инфраструктурных компонент, написанных в команде Валентина: работа с БД, виладтор+гидратор на типах статанализа, шина сообщений

  • История появления библиотеки для работы с запросами к БД и чем не подошли популярные решения?

  • Учёт нюансов PostgreSQL, нативная работа с JSON в СУДБ

  • Неудобства Doctrine Query Language (DQL)

  • Неудобства Doctrine DBAL

  • Single Responsibility принцип в Doctrine

  • Конвертация типов из PHP в БД и в обратную сторону из БД в PHP

  • Коммит в Open Source библиотеку vs написание своей собственной реализации

  • Стоимость разработки самописных компонент для бизнеса

  • Мотивация команды

  • Распространение знаний внутри компании, документация

  • Тесты как документация

  • Сегодня самописные компоненты, а завтра самописный фреймворк?

  • Безопасность собственного решения

  • Свой фреймворк или свой Open Source как часть HR-бренда

  • Как отличить резонную разработку

  • Кто принимает финальное решение о старте собственной разработки вместо использования готового решения?

  • Подробности про собственную шину сообщений (Message Bus компонент)

  • Вопросы гарантированной доставки сообщений

  • Паттерн Outbox https://habr.com/ru/company/lamoda/blog/678932/)

  • Недостатки Symfony Messanger Component

  • Работа с middleware в шине сообщений – разные middleware для разных обработчиков

  • Routing Topology

  • Exchange сообщения – Fanout – Exchange модуля/очереди

  • Поддержка паттерна Saga

  • Отделение класса с состоянием от класса с поведением, но с сохранением инкапсуляции

  • Когда будет опубликована библиотека для работы с запросами к БД Thesis? https://phprussia.ru/moscow/2021/abstracts/7654)

  • Перфекционизм vs Тщательность

  • Польза не только от самописного решения, но и от знаний полученных в процессе его написания

  • Цели на 2023 год

Пятиминутка PHP - подкаст о PHP, DBA, архитектуре, DevOps. Авторское мнение о современных трендах в веб-разработке и интересные беседы с гостями. 5minphp.ru)