Kodokon kodokon.com

Просим объяснить понятие или кусок кода

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

7 мин · 3 вопросов

Открыть этот урок в Kodokon

Самая недоиспользуемая суперсила ИИ: он может объяснить одно и то же на стольких уровнях, сколько нужно, ни разу не потеряв терпения. У учебника один уровень; у преподавателя-человека - два или три, пока он не устанет. А ИИ может объяснить тебе замыкания как десятилетнему ребёнку, потом как мотивированному новичку, потом как опытному разработчику - и щелчок происходит именно от сравнения этих трёх версий.

PROMPT
Explain the concept of "closure" in JavaScript to me at three successive levels:

1. CHILD LEVEL: as if to a 10-year-old, with an analogy from everyday life, zero technical vocabulary.
2. BEGINNER LEVEL: as if to someone who knows variables and functions, with a minimal code example (5 lines maximum).
3. PRO LEVEL: the rigorous definition, what happens in memory, and a real use case where closures are indispensable.

Keep the three levels clearly separated. End by asking me ONE question to check that I've understood level 2.
Объяснение в три яруса: аналогия даёт интуицию, уровень профи даёт точность.

Используй каждый уровень ради того, что он даёт. Детский уровень даёт интуицию - мысленный образ, который останется с тобой на годы. Уровень новичка даёт мост между образом и кодом. Уровень профи даёт точность - те самые термины, которые ты прочитаешь в документации и услышишь на собеседовании. Если уровень профи остаётся тёмным, это сигнал переработать уровень ниже, а не перечитывать его по кругу.

Та же техника и для существующего кода - кода коллеги, из туториала или из библиотеки. Неправильный рефлекс: попросить «перепиши этот код проще», что заменяет твоё непонимание другим кодом, который ты поймёшь ничуть не лучше. Правильный рефлекс: попросить структурированное объяснение, вообще без переписывания.

PROMPT
Here's some code I'm trying to UNDERSTAND (not to modify):

[paste the code here]

Instructions:
1. Don't rewrite this code, don't suggest any improvement.
2. First explain in one sentence what this code does overall.
3. Then explain it block by block, in the actual order of execution.
4. Point out the 2 or 3 hardest lines for an intermediate learner and detail them with an analogy.
5. End with a question that tests whether I've really understood the central mechanism.
Понять код, не переписывая его: порядок выполнения превыше всего.

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

Проверка знаний

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

  1. Чем полезен «детский» уровень объяснения взрослому, который учится программировать?
    • Ничем, для взрослого это потеря времени
    • Он строит интуицию и мысленный образ понятия
    • Он заменяет официальную документацию
    • Он готовит к собеседованиям
  2. Почему не стоит просить «перепиши этот код проще», когда ты пытаешься его понять?
    • Потому что ИИ всегда переписывает с багами
    • Потому что ты меняешь один непонятый кусок кода на другой и ничему не учишься
    • Потому что это медленнее объяснения
  3. В чём состоит «обратный пересказ»?
    • Попросить ИИ повторить объяснение задом наперёд
    • Объяснить понятие своими словами и попросить ИИ исправить только ошибки
    • Перевести объяснение на другой язык
    • Попросить три разные аналогии одного и того же понятия