Организованное программирование

#51 ORM vs SQL — Дебаты: что побеждает в реальных проектах? Александр Вершилов


Listen Later

В этом выпуске мы поговорили с Александром Вершиловым — разработчиком с 15-летним опытом и руководителем отдела разработки в Сириус.Курсах. Мы устроили дебаты про ORM. Обсудили чем ORM отличается от query-builder’а, разобрали типичные проблемы N+1 и ленивых связей, сравнили подходы Code-First и Data-First к миграциям, а также поделились приёмами, как обойтись без ORM и не потерять производительность.

Вы узнаете, когда строгая типизация (на примере Haskell) спасает проект, какие настройки ORM могут «положить» продакшен и какие практики позволяют держать базу под контролем.  А так же решите для себя, брать ли ORM в следующий проект или сразу писать SQL.

  • (00:00) - Введение. Почему мы всё ещё спорим про ORM?
  • (02:18) - Что такое ORM на пальцах — быстро, чётко, по делу
  • (04:32) - PHP и ORM: от древности до Laravel
  • (07:01) - ORM глазами хаскелиста — определение через опыт
  • (08:51) - Как типизация усложняет или упрощает маппинг
  • (10:35) - Связи решают всё: зачем они важны в любой базе
  • (13:45) - Фильтрация и динамика: где builder выигрывает у SQL
  • (17:51) - Тестируем SQL: что делать с ошибками на проде
  • (22:30) - Почему auto-инструментация — это роскошь не для всех
  • (25:43) - Query builder — обязательный минимум для любого проекта?
  • (29:23) - Когда ORM спасает время (и нервы)
  • (34:08) - Сериализация "на автомате" — магия или хорошая инженерия?
  • (36:51) - Промышленный стандарт = спокойствие в команде
  • (39:39) - Магия рефлексии: когда модель = пустой класс
  • (41:31) - Код first: почему он иногда опаснее, чем кажется
  • (43:36) - Zero downtime и миграции: возможно ли идеальное развертывание?
  • (49:36) - Как PHP прошёл путь к миграциям: взгляд в прошлое
  • (54:08) - Когда SQL тормозит: ищем виновника
  • (57:45) - Запросы: главная претензия к ORM
  • (01:05:03) - Как распознать N+1 запрос и не страдать
  • (01:08:13) - Пример Elixir: ORM без боли и магии
  • (01:12:44) - Где заканчивается SQL и начинается здравый смысл
  • (01:19:14) - Как удалять данные и при этом не терять их
  • (01:22:25) - ORM и бизнес-логика: когда класс — не просто класс
  • (01:28:50) - Декларативность vs. контроль: можно ли совместить?
  • (01:32:26) - Генерация объектов: действительно ли тормозит?
  • (01:36:22) - Оптимистичная блокировка спасает не только от конфликтов
  • (01:41:14) - Транзакции, блокировки и реалии продакшена
  • (01:44:58) - Нерешаемая проблема мутабельности
  • (01:48:27) - Когда "умная" ORM становится врагом архитектуры
  • (01:51:01) - Заключение. Как жить с ORM и не страдать?
  • ★ Support this podcast ★
    ...more
    View all episodesView all episodes
    Download on the App Store

    Организованное программированиеBy Кирилл Мокевнин

    • 4.8
    • 4.8
    • 4.8
    • 4.8
    • 4.8

    4.8

    6 ratings


    More shows like Организованное программирование

    View all
    Завтракаст (Zavtracast) by Завтракаст (Zavtracast)

    Завтракаст (Zavtracast)

    123 Listeners

    Радио Медуза by Медуза / Meduza

    Радио Медуза

    95 Listeners

    Два по цене одного by libo/libo

    Два по цене одного

    94 Listeners

    kuji podcast by kuji podcast

    kuji podcast

    134 Listeners

    Психология с Александрой Яковлевой by Александра Яковлева

    Психология с Александрой Яковлевой

    62 Listeners

    Три пункта | Психология и юмор by Реальные истории людей

    Три пункта | Психология и юмор

    26 Listeners

    Запуск завтра by libo/libo

    Запуск завтра

    86 Listeners

    Экономика на слух by РЭШ

    Экономика на слух

    11 Listeners

    Подкаст Глеба Соломина by Глеб Соломин

    Подкаст Глеба Соломина

    5 Listeners

    План Б by Т—Ж

    План Б

    17 Listeners

    На пенсию в 35 лет! by Babaykin

    На пенсию в 35 лет!

    12 Listeners

    Почему мы еще живы by libo/libo

    Почему мы еще живы

    116 Listeners

    Живой Гвоздь by Живой Гвоздь

    Живой Гвоздь

    178 Listeners

    В курсе рубля by Т—Ж

    В курсе рубля

    2 Listeners

    Конкуренты by libo/libo

    Конкуренты

    35 Listeners