Kacam.net

Ревью кода

评审一段重试代码

「失败了就重试三次」——那第一次超时的那笔,对面到底收到没有?

Скопируйте заготовку и выберите модель. Она будет вести себя как интервьюер и разбирать задачу с вами по действиям, а не выкладывать ответ.

ChatGPT Claude DeepSeek 豆包 Kimi Gemini

На телефоне с установленным приложением система откроет само приложение. Внутри WeChat внешние приложения не открываются — сначала откройте ссылку в браузере.

В конце скопированного текста лежит разбор, по которому модель вас оценивает. Не читайте его заранее: ценно именно то, что вы дошли сами.

一段二十行的重试代码,几乎每个项目里都有一段长得差不多的。

它会揪住一件事不放:超时不等于对面没收到。想明白这一句,才轮到讨论重试怎么写;想不明白,重试就是在把同一笔单下两遍。

另一条是规模:它会让你算一百个客户端同时超时,对面会收到多少 QPS —— 重试到底是在救火还是在浇油,是一个能算出来的数。

★★★★☆ · около 35 мин · Что проверяется: 重试的前提是幂等、超时、退避与抖动、放大倍数、异常被吞掉

Что здесь в основном подложено

Повторы и таймауты Идемпотентность Ресурсы и ёмкость

Делали эту задачу?

Войдите, чтобы отметить, что задача пройдена: в следующий раз будет видно, когда это было.

Заметки тех, кто уже прошёл

Пока никто не написал. После разбора расскажите, что из него вышло: на каком действии вы застряли и какой вывод потом поменяли.

Войти, чтобы написать заметку.

Как этим пользоваться

Материал наш: несколько десятков строк с виду рабочего кода и десяток дефектов, подложенных по убыванию тяжести. От вас эта серия не требует ничего — открывайте и начинайте.

Поза допросная: без спойлеров, без похвалы, и «не смог ответить» — нормальный исход. Скажете «здесь гонка» — не отпустит: потребует две колонки таймлайна и масштаб ущерба.

С чего начать

  1. Выберите одно, откройте, скопируйте промпт.
  2. Вставьте в новый пустой чат — он сам вернёт вам этот код без изменений.
  3. Читайте сами и назовите все найденные проблемы по одной — в первой сцене он не перебивает и не подсказывает. Закончив, скажите «это всё».

Четыре команды, их можно бросить в любой момент

  • 跳过 Сразу к следующей сцене
  • 提示 Дай направление, но не ответ
  • 直说吧 Дай полный ответ по этому пункту и продолжай спрашивать про цену
  • 复盘 Сразу к итоговой карточке

В конце — цифра

Доля находок: сколько нашли сами, из скольких, и сколько было ложных срабатываний. И ещё одна, менее приятная цифра — сколько из пропущенного относится к высшей степени тяжести (пропадают деньги, утекают данные, падает сервис). Она полезнее общей оценки.

Три ловушки

  • Ключ в конце — это и есть тот самый список дефектов. Не читайте его заранее: прочитали — задание израсходовано.
  • Не сообщайте о названиях и стиле. Здесь считается, теряются ли деньги и утекают ли данные; замечания по стилю записываются как ложное срабатывание.
  • Как только начнёт хвалить, напомните про правило «не хвали меня». Ощущение правоты заглушает вопрос «что я пропустил».

Начните с перевода денег — там дефекты плотнее всего. Если вы каждый день пишете API, идите сразу к списочной ручке: дыра в правах и инъекция через параметр сортировки легче всего находятся в собственном коде. Что бы вы ни прошли, потом поищите то же самое у себя в репозитории — настоящий результат это три проверочных вопроса из итоговой карточки.