Type Driven Development: лайвкодинг с AI

Чем больше свободы мы даём AI, тем больше вариантов реализации он может придумать.
А значит, тем больше работы остаётся человеку: проверить архитектуру, предусмотреть крайние случаи, убедиться, что модель ничего не сломала и не придумала лишнего.
На открытом вебинаре разберём другой подход: не пытаться лучше контролировать AI, а заранее ограничивать пространство решений.
Потому что самая дешёвая ошибка — та, которую поймал компилятор.
Не тест, не QA, не пользователь в проде, а компилятор. За секунду и ещё до коммита.
Но обычно мы используем его по минимуму: всё моделируем строками, int и null, а потом пишем горы проверок и тестов, чтобы поймать то, чего код вообще не должен был позволить:
email, в котором нет @;
заказ, который отменили после доставки;
userId, переданный туда, где ждали orderId.
На вебинаре возьмём живую задачу и в формате лайвкодинга с AI вместе построим дизайн, который ловит часть ошибок ещё на этапе компиляции:
заменим примитивы на типы из предметной области;
сделаем некорректные состояния непредставимыми;
посмотрим, как компилятор подсказывает, что мы забыли обработать новый случай;
разберём, где заканчивается польза от типов и начинается работа тестов.
Заодно посмотрим, как такой подход помогает работе с AI: модель получает не пустое поле для генерации, а набор ограничений, которые сужают пространство возможных решений и уменьшают объём ручной проверки.
Ведущие:
Антон Бевзюк
Светлана Кривенко
Екатерина Черепанова
Анна Короткова



