20 промптов для кода, после которых ИИ не гадает
Большинство плохого кода от ИИ возникает, когда модель сама додумывает то, что вы не сказали. Каждый промпт здесь закрывает один такой пробел: модель сначала читает, потом пишет, сначала проверяет, потом чинит, и вслух ранжирует свои догадки.
Замените [скобки] на ваш код, ошибка или цель.
01. Оцените радиус поражения, прежде чем что-то трогать
Перед изменением кода, который вы не писали.
Прочитай код ниже. Пока не пиши и не меняй никакой код. Скажи мне: 1. Что он делает, не более чем в трёх предложениях. 2. Все допущения, которые он делает о входных данных, вызывающем коде и окружении. 3. Что сломается, если я [опишите изменение, которое хотите внести], и где именно. Если для ответа нужно увидеть другой файл, назови этот файл и остановись. [вставьте код]
02. Ранжируйте причины, прежде чем кто-то пишет исправление
Баг, который вы пока не можете объяснить.
Вот ошибка и код вокруг неё. Перечисли три самые вероятные причины, начиная с самой вероятной. Для каждой дай одну строку лога или один тест, которые подтвердят её или исключат. Не предлагай исправление. Проверки я проведу сам и скажу, какая это была причина. Ошибка и стек вызовов: [вставьте ошибку] Код: [вставьте нужный код]
03. Напишите падающие тесты и остановитесь
Перед тем, как просить новый код или исправление.
Напиши тесты для [функция или возможность] с использованием [тестовый фреймворк]. Покрой обычный случай, вот эти граничные случаи: [перечислите те, что уже знаете], и минимум два случая, о которых, по-твоему, я не подумал. Одной строкой объясни, почему важен каждый из этих двух. Каждый тест должен падать на текущем коде или при отсутствующей реализации. Саму реализацию не пиши.
Откройте остальные промпты (17) бесплатно
Подпишитесь на рассылку Whizi, чтобы прочитать остальную часть набора.
- Проведите ревью диффа глазами того, кого будят по пейджеру
- Рефакторинг без изменения единого поведения
- Выберите пять файлов, которые читать первыми
- Напишите запрос под вашу реальную схему
- Получите регулярку вместе со случаями, которые её доказывают
- Портируйте код так, будто его писал носитель языка
- Найдите, куда уходит время, по реальному профилю
- Проследите недоверенный ввод от источника до приёмника
- Напишите README, которым сможет пользоваться посторонний
- Напишите сообщение коммита по диффу
- Изучите понятие на примере собственного кода
- Спроектируйте API, а затем атакуйте проект
- Спланируйте миграцию, которая не останавливает сайт
- Пусть вопросы задаёт модель
- Перечислите входные данные, которые это сломают
- Найдите, что обновление зависимости сломает в вашем коде
- Попросите вторую модель оценить первую