Программирование с ИИ
ENRU
3.7

Шаблон — объясни этот код

главный запрос для того, кто учится читать

Что это

Самый недооценённый запрос. Он ничего не создаёт, поэтому кажется необязательным — а на деле именно он превращает чужой код в твой и закрывает шаг 4 рабочего цикла.

Важно спрашивать до того, как принял код, а не после того, как он сломался. Объяснение на две минуты экономит час отладки через неделю.

Как выглядит в коде

Три уровня вопроса

Запрос
Что это делает в двух предложениях?

Для быстрой ориентировки: открыл чужой файл, надо понять, нужен ли он вообще.

Запрос
Объясни построчно, что делает эта функция.
Для каждой строки: что происходит и зачем она нужна.

Для кода, который собираешься принять в проект.

Запрос
Почему здесь сделано именно так? Какие были альтернативы
и почему выбран этот вариант?

Для кода, который кажется странным. Часто выясняется, что странность обоснована — или что обоснования нет и код можно упростить.

Вопрос, который работает лучше всех

Лучше
Что произойдёт, если API вернёт пустой список?
А если соединение оборвётся на середине?

Вопрос «что будет, если» проверяет код на прочность лучше, чем просьба объяснить. Объясняя, ИИ пересказывает намерение; отвечая на «что если», он вынужден проследить реальный путь выполнения — и нередко сам находит дыру.

Как сказать ИИ

Проси объяснять на своём уровне

Объяснение бесполезно, если в нём столько же непонятных слов, сколько в коде.

Запрос
Объясни, считая, что я знаю Python на уровне функций и словарей,
но не работал с async и не знаю, что такое декоратор.

Это не стыдно и не «для новичков» — это экономия времени. ИИ подстроит объяснение, и не придётся задавать пять уточняющих вопросов.

Проси пример вместо определения

Абстрактное объяснение забывается, конкретное — нет.

Запрос
Покажи на примере: какие данные придут в эту функцию
и что она вернёт. Два-три случая, включая неудачный.

Объяснение как приёмка

Перед тем как принять сгенерированный код, стоит задать один вопрос:

Запрос
Назови три места в этом коде, где он сломается
при неожиданных входных данных.

Если ИИ не может назвать ни одного — скорее всего, он не проверял; если называет три — у тебя готовый список для проверки.

На что смотреть

ИИ объясняет замысел, а не код. Он читает имена функций и пересказывает, что они должны делать. Если функция называется validate_user, но ничего не проверяет, объяснение всё равно скажет «проверяет пользователя». Защита: спроси не «что делает», а «что произойдёт при таком-то входе».

Объяснение звучит уверенно и при этом неверно. Особенно в чужих библиотеках и редких языковых конструкциях. Если от объяснения зависит решение — проверь в документации.

Слишком гладко. Если объяснение не содержит ни одного «здесь может сломаться», скорее всего, это пересказ, а не разбор. Спроси про слабые места прямо.

Шпаргалка

  • Спрашивай до того, как принял код, а не после поломки.

  • Три уровня: в двух предложениях · построчно · почему так.

  • «Что будет, если…» работает лучше, чем «объясни».

  • Называй свой уровень — получишь объяснение без лишних слов.

  • Перескажи своими словами и попроси поправить.

  • ИИ склонен пересказывать намерение по именам, а не читать код.