В этом выпуске мы поговорили с Егором Бугаенко — автором «Elegant Objects» и сторонником «честного» ООП-мышления. Он раскрыл, почему классическое объектно-ориентированное программирование — это не архитектура, а иллюзия порядка, за которой скрывается хаос.
Разобрали, почему null, static и наследование — главные разрушители систем, как мышление «в классах» ведёт к техдолгу, и почему ORM прячет от нас реальные ошибки в работе с данными. Егор настаивает: код должен быть сконструирован, а не написан, иначе система становится неуправляемой — особенно в эпоху LLM, когда ИИ сыплет автопатчами и код перестаёт быть осмысленным.
Также обсудили:
- Почему композиция объектов — основа устойчивой архитектуры
- Как мыслить модулями, а не строками кода
- Что такое Fail Fast и зачем системе «падать» сразу
- Почему архитектурное мышление — навык разработчика будущего
- Как LLM усиливают хаос, если нет модели
- Роль дизайн-долга и как он убивает бизнес-процессы
Это выпуск для тех, кто не хочет быть просто кодером в мире, где код уже пишет ИИ.
- (00:00) - Введение и анонс
(00:57) - История ООП: Как всё начиналось и где свернули не туда(03:47) - UML: Почему диаграммы не работают в живом коде(07:57) - IT без кода: Кто такие архитекторы, аналитики и зачем они нужны(10:27) - UML и микросервисы: Почему вместе они не работают(14:07) - Тесты: Почему юнит-тесты не спасают от багов(18:53) - Микросервисы: Как проектировать, чтобы не пожалеть(25:30) - Образование и ООП: Чему учат и чему не учат(29:20) - Высшее IT-образование: Почему оно отстаёт от практики(35:04) - ИИ в программировании: Помощник или угроза?(36:59) - Будущее кода: Кто будет писать программы завтра(39:49) - ООП сегодня: Жив ли подход или пора прощаться?(43:34) - Генерация кода ИИ: Ускорение или потеря контроля?(46:22) - Промты для ИИ: Как правильно общаться с машиной(50:09) - Дизайн системы: Как не утонуть в архитектуре(52:58) - Маппинг: Когда преобразование данных становится проблемой(55:49) - ORM: Почему это может быть ловушкой для проекта(59:35) - Фреймворки: Примеры, которые стоит знать(01:03:20) - Ручной SQL: Контроль, который стоит усилий(01:07:04) - Nullable: Почему это не просто пустое значение(01:15:40) - Обучение программистов: Чему стоит уделить внимание(01:20:26) - Когнитивная нагрузка: Как null усложняет мышление(01:26:06) - Теория и практика: Как найти баланс в программировании(01:29:53) - Осознанные нарушения: Когда отступление от правил оправдано(01:37:25) - Обработка исключений: Как управлять жизненным циклом объекта(01:44:03) - Системы типов: Как они помогают и мешают(01:50:41) - Функциональное vs ООП: В чём разница на практике(01:56:24) - Применение подходов: Как выбрать правильный инструмент(01:58:17) - Философия ООП: Что стоит за объектами(02:03:00) - Композиция и принципы: Как строить надёжные системы(02:06:44) - Паттерны: Почему некоторые из них устарели(02:13:27) - Чистый код: Почему не всё так чисто(02:14:23) - Современные книги: Что читать вместо «Чистого кода»(02:16:17) - Заключение
★ Support this podcast ★