Artwork

เนื้อหาจัดทำโดย Кирилл Мокевнин เนื้อหาพอดแคสต์ทั้งหมด รวมถึงตอน กราฟิก และคำอธิบายพอดแคสต์ได้รับการอัปโหลดและจัดหาให้โดยตรงจาก Кирилл Мокевнин หรือพันธมิตรแพลตฟอร์มพอดแคสต์ของพวกเขา หากคุณเชื่อว่ามีบุคคลอื่นใช้งานที่มีลิขสิทธิ์ของคุณโดยไม่ได้รับอนุญาต คุณสามารถปฏิบัติตามขั้นตอนที่แสดงไว้ที่นี่ https://th.player.fm/legal
Player FM - แอป Podcast
ออฟไลน์ด้วยแอป Player FM !

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

1:51:31
 
แบ่งปัน
 

Fetch error

Hmmm there seems to be a problem fetching this series right now. Last successful fetch was on November 02, 2025 14:36 (19d ago)

What now? This series will be checked again in the next hour. If you believe it should be working, please verify the publisher's feed link below is valid and includes actual episode links. You can contact support to request the feed be immediately fetched.

Manage episode 491701093 series 3585626
เนื้อหาจัดทำโดย Кирилл Мокевнин เนื้อหาพอดแคสต์ทั้งหมด รวมถึงตอน กราฟิก และคำอธิบายพอดแคสต์ได้รับการอัปโหลดและจัดหาให้โดยตรงจาก Кирилл Мокевнин หรือพันธมิตรแพลตฟอร์มพอดแคสต์ของพวกเขา หากคุณเชื่อว่ามีบุคคลอื่นใช้งานที่มีลิขสิทธิ์ของคุณโดยไม่ได้รับอนุญาต คุณสามารถปฏิบัติตามขั้นตอนที่แสดงไว้ที่นี่ https://th.player.fm/legal

В этом выпуске мы поговорили с Александром Вершиловым — разработчиком с 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 ★
  continue reading

67 ตอน

Artwork
iconแบ่งปัน
 

Fetch error

Hmmm there seems to be a problem fetching this series right now. Last successful fetch was on November 02, 2025 14:36 (19d ago)

What now? This series will be checked again in the next hour. If you believe it should be working, please verify the publisher's feed link below is valid and includes actual episode links. You can contact support to request the feed be immediately fetched.

Manage episode 491701093 series 3585626
เนื้อหาจัดทำโดย Кирилл Мокевнин เนื้อหาพอดแคสต์ทั้งหมด รวมถึงตอน กราฟิก และคำอธิบายพอดแคสต์ได้รับการอัปโหลดและจัดหาให้โดยตรงจาก Кирилл Мокевнин หรือพันธมิตรแพลตฟอร์มพอดแคสต์ของพวกเขา หากคุณเชื่อว่ามีบุคคลอื่นใช้งานที่มีลิขสิทธิ์ของคุณโดยไม่ได้รับอนุญาต คุณสามารถปฏิบัติตามขั้นตอนที่แสดงไว้ที่นี่ https://th.player.fm/legal

В этом выпуске мы поговорили с Александром Вершиловым — разработчиком с 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 ★
  continue reading

67 ตอน

ทุกตอน

×
 
Loading …

ขอต้อนรับสู่ Player FM!

Player FM กำลังหาเว็บ

 

คู่มืออ้างอิงด่วน

ฟังรายการนี้ในขณะที่คุณสำรวจ
เล่น