Опишите поведение на пустом вводе, ошибке и предельных значениях.
Зачем
Зачем это нужно
Отделите перенос логики от выбора библиотек целевого языка.
Сравните результаты исходной и новой программы на одном наборе данных.
Вопросы
Частые вопросы
Как задать проверяемый пример перевода?
«Учебная функция Python возвращает text[:3]. Для Енотик ожидаю Ено, для cat — cat, для пустой строки — пустую строку. Перенеси на Go, считая Unicode-кодовые точки». Такой запрос задаёт конкретный контракт. Попросите объяснить отличие байтового среза и отдельно разобрать текст с комбинируемым знаком, где видимый символ может состоять из нескольких кодовых точек.
Что делать с исключениями и пустыми значениями?
Укажите, как исходный код сообщает об ошибке: исключением, специальным значением или отдельным статусом. В целевом языке возможен другой привычный интерфейс, но вызывающая сторона должна получить ту же информацию. Попросите таблицу соответствий для отсутствующего поля, пустой строки и неверного формата. Их объединение в один ноль или пустой ответ часто незаметно меняет смысл программы.
Какие тесты нужны до замены старого модуля?
Соберите эталонные входы и результаты старой версии, затем сравните их с новой. Помимо обычных значений добавьте Unicode, большой размер, дубликаты и ошибочные данные. Если порядок не гарантирован контрактом, сравнивайте содержимое отдельно. Согласуйте допустимые изменения заранее: более удобная структура ответа тоже может нарушить интеграцию, хотя вычисленные значения остаются правильными.
Можно ли автоматически заменить все зависимости?
Точного аналога может не быть, а похожее название не гарантирует одинаковой семантики. Передайте список используемых возможностей библиотеки и ограничения лицензии или среды. Модель предложит кандидатов либо узкую границу между старым и новым модулем. Она не устанавливает пакеты и не компилирует перенос в чате; доступность API и итоговое поведение проверяются вами отдельно.
Рядом
Соседние страницы каталога
Дальше — весь каталог задач: поиск по названию, темы и фильтры.