Словарь юного программиста: 50 слов простым языком

Справочникобновлено 07.10.202611 мин чтения

Термины программирования — это слова, которыми программисты называют части программы и действия с ней: алгоритм, переменная, цикл, функция, баг, отладка. В этом словаре 50 понятий, сгруппированных по темам, с короткими объяснениями и примерами на Python, понятными школьнику и родителю без опыта в коде.

Зачем нужен словарь терминов программирования

Словарь нужен, чтобы ребёнок и взрослый говорили об одной программе одними словами: «цикл не останавливается» понятнее, чем «оно всё время повторяется». Точное слово помогает и спросить учителя, и найти ответ в справке.

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

Слова разбиты на 6 групп: основы, данные, управление порядком действий, функции и модули, ошибки, инструменты. Внутри группы термины идут от простого к сложному. Каждое объяснение короткое; если понятие разобрано подробно в отдельном уроке, рядом есть ссылка.

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

Основы: алгоритм, программа, синтаксис

Алгоритм — это точный порядок действий для решения задачи, а программа — тот же алгоритм, записанный на языке, понятном компьютеру. С этих 8 слов начинается любой курс информатики.

ТерминЧто значит
АлгоритмПоследовательность понятных шагов, которая приводит к результату. Рецепт пирога — тоже алгоритм.
ИсполнительТот, кто выполняет команды: компьютер, робот, Черепашка на уроке информатики.
КомандаОдно указание исполнителю: «вперёд 10», print("Привет").
ПрограммаАлгоритм, записанный на языке программирования, который компьютер может выполнить.
Исходный кодТекст программы, который пишет человек. Его можно читать, менять и копировать.
Язык программированияНабор слов и правил для записи программ: Python, C++, Паскаль, Scratch.
СинтаксисПравила записи: где ставить скобки, двоеточия и кавычки.
ПрограммистЧеловек, который придумывает алгоритмы и записывает их в виде кода.

По федеральной образовательной программе основного общего образования на уроках информатики в 8 классе изучают исполнителей Робот, Черепашка и Чертёжник[1]. Исполнитель с небольшим набором команд — удобный способ понять, что такое алгоритм, ещё до первой строки на Python. Подробнее об этом рассказывает статья про алгоритмы для детей.

Данные: переменная, тип, список

Данные — это всё, с чем работает программа: числа, слова, ответы «да» и «нет». Для их хранения и обработки есть 10 базовых понятий, и почти все встречаются уже в первой программе.

ТерминЧто значит
ПеременнаяИмя, под которым программа хранит значение. В ochki = 0 переменная называется ochki.
ПрисваиваниеЗапись значения в переменную знаком =.
ЗначениеТо, что лежит в переменной: число 5, слово «кот».
Тип данныхВид значения: целое число int, дробное float, строка str.
Целое числоЧисло без дробной части: 7, −3, 0.
СтрокаТекст в кавычках: "Привет".
Логическое значениеИстина или ложь: True и False.
Список (массив)Набор значений по порядку: [3, 1, 4].
ИндексНомер элемента в списке или строке. Счёт идёт с нуля.
СловарьНабор пар «ключ — значение»: {"кот": 4}.

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

Управление: условие, цикл, итерация

Если программа должна что-то выбрать или повторить, используются условия и циклы. Это 8 терминов, без которых не обходится ни одна игра и ни одна задача с перебором.

ТерминЧто значит
УсловиеПроверка, ответ на которую «да» или «нет»: x > 5.
ВетвлениеВыбор, какую часть программы выполнить: if, elif, else.
СравнениеОперация, которая сопоставляет два значения: ==, <, >=.
ЦиклПовторение команд: for или while, в Scratch — «повторить».
Тело циклаКоманды, которые повторяются; в Python они сдвинуты отступом.
ИтерацияОдин проход цикла. Цикл из 10 повторов делает 10 итераций.
СчётчикПеременная, которая считает шаги или найденные элементы.
Бесконечный циклЦикл, условие которого никогда не становится ложным.

Исследователи Brennan и Resnick относят последовательности, циклы, события, параллельность, условия, операторы и данные к базовым понятиям вычислительного мышления[2]. Почти все они есть в этом словаре. «События» и «параллельность» лучше всего видны в Scratch, где несколько спрайтов действуют одновременно и реагируют на нажатие флажка.

Функции, модули и объекты

Функция — это именованный кусок кода, который можно вызвать много раз. Вокруг неё сложилось 10 терминов, и их полезно различать, потому что «аргумент» и «параметр» часто путают даже взрослые.

ТерминЧто значит
ФункцияПодпрограмма с именем. В Python создаётся словом def.
ВызовЗапуск функции по имени со скобками: len("кот").
ПараметрИмя в описании функции, которое примет входное значение.
АргументКонкретное значение, переданное при вызове.
Возвращаемое значениеРезультат, который функция отдаёт словом return.
Встроенная функцияГотовая функция языка: print, len, sum.
МодульФайл с готовыми функциями, который подключают через import.
БиблиотекаНабор модулей для одной области: графика, математика, игры.
ОбъектЗначение вместе с его действиями. В Python объектами являются даже числа.
МетодДействие объекта, вызываемое через точку: "кот".upper().
def privet(imya):
    return "Привет, " + imya + "!"

print(privet("Маша"))

Здесь imya — параметр, "Маша" — аргумент, строка «Привет, Маша!» — возвращаемое значение. В официальной документации Python эти слова используются именно так[3]. Больше примеров — в уроке про функции в Python.

Ошибки: баг, отладка, исключение

Баг — это ошибка в программе, из-за которой она работает не так, как задумано. Поиск и исправление багов называется отладкой, и для этого процесса есть ещё 5 полезных слов.

ТерминЧто значит
БагОшибка в программе. От английского bug — «жук».
ОтладкаПоиск и исправление ошибок; по-английски debugging, отсюда «дебаг».
Синтаксическая ошибкаНарушение правил записи, из-за которого программа не запускается.
ИсключениеОшибка во время работы: деление на ноль, неверный индекс.
TracebackСообщение Python об ошибке: в каком файле, в какой строке и что случилось.
ТрассировкаПошаговое выполнение программы вручную с записью значений переменных в таблицу.
ТестПример входных данных с заранее известным правильным ответом.

Ошибиться не стыдно: отладка — обычная часть работы любого программиста. Прятать баг или переписывать программу с нуля не стоит: почти всегда ошибку можно найти за несколько шагов. Как читать сообщение об ошибке и искать её по шагам, рассказано в статье об отладке программ.

Инструменты: компилятор, интерпретатор, IDE

Чтобы текст программы превратился в действия компьютера, нужен переводчик — компилятор или интерпретатор. Ещё 5 слов описывают, где и как программист пишет код.

ТерминЧто значит
КомпиляторПрограмма, которая переводит весь код целиком в машинные команды до запуска. Так работает C++.
ИнтерпретаторПрограмма, которая читает и выполняет код по ходу дела. Так обычно запускают Python.
IDE (среда разработки)Программа для написания кода: редактор, запуск и поиск ошибок в одном окне. IDLE — простая IDE для Python.
Редактор кодаОкно, где набирают программу, с подсветкой слов и отступами.
КонсольОкно для текстового ввода и вывода; в IDLE она называется Shell.
КомментарийПояснение в коде, которое компьютер пропускает. В Python начинается с #.
ОтступПробелы в начале строки. В Python они показывают, какие строки входят в блок.

Процессор понимает только машинные команды, поэтому текст на любом языке он выполняет только после перевода — компилятором или интерпретатором. Python Software Foundation распространяет стандартный интерпретатор вместе с IDLE, и для первых программ ничего другого устанавливать не нужно. Как компьютер выполняет машинные команды и где хранится программа во время работы, объясняет статья о том, как устроен компьютер.

Как запоминать новые слова

Чтобы термин закрепился, его нужно не перечитать, а вспомнить и применить: попробуйте объяснить слово своими словами и найти его в собственной программе. Это работает лучше, чем заучивание списка.

Исследование Roediger и Karpicke показало, что попытка вспомнить материал закрепляет его надёжнее, чем повторное чтение[4]. Для словаря это значит простую игру: закройте правую колонку таблицы и попробуйте объяснить термин, потом проверьте себя. Возвращаться к игре стоит через несколько дней, а не десять раз подряд за вечер: обзор Cepeda и соавторов показывает, что повторение с перерывами работает надёжнее, чем повторение подряд. Родителю хороший приём — попросить ребёнка рассказать, что делает его программа, используя хотя бы 3 слова из этого словаря. Когда ребёнок объясняет, он сам замечает, где понимание ещё неточное.

Когда словарь не поможет

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

  • Программа не работает. Знание слова «отладка» не найдёт ошибку — нужно запустить код и прочитать последние 2 строки сообщения.
  • Ребёнку 6–7 лет. Термины ему не нужны: в ScratchJr достаточно собирать блоки и видеть результат.
  • Подготовка к ОГЭ. На экзамене из 16 заданий нет вопросов «дайте определение», важно уметь решать.
  • Профессиональный жаргон. Словарь охватывает 50 школьных понятий; слова из взрослой разработки здесь не собраны.

Миф: «Слово „баг“ появилось, когда в компьютер залетела моль». История с насекомым в реле знаменита, но инженеры называли неполадки «жуками» и раньше. Подтверждения, что термин возник именно тогда, не существует.

Миф: «Сначала нужно выучить все термины программирования, а потом писать код». Это не подтверждается опытом обучения: слова запоминаются, когда за ними стоит собственная программа. Начинать стоит с проекта, а словарь держать под рукой.

Чего делать нельзя

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

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

Если хочется понять, зачем вообще учить детей этим понятиям, прочитайте о том, что такое вычислительное мышление: эту идею как навык для всех описала Jeannette Wing[5].

Источники

[1] Приказ Минпросвещения России от 18.05.2023 № 370 «Об утверждении федеральной образовательной программы основного общего образования».

[2] Brennan K., Resnick M. New frameworks for studying and assessing the development of computational thinking // Proceedings of the 2012 Annual Meeting of the American Educational Research Association. Vancouver, 2012.

[3] The Python Tutorial (официальная документация Python 3). Python Software Foundation.

[4] Roediger H. L., Karpicke J. D. Test-enhanced learning: Taking memory tests improves long-term retention // Psychological Science. 2006. Vol. 17, № 3. P. 249–255.

[5] Wing J. M. Computational thinking // Communications of the ACM. 2006. Vol. 49, № 3. P. 33–35.

[6] Cepeda N. J., Pashler H., Vul E., Wixted J. T., Rohrer D. Distributed practice in verbal recall tasks: A review and quantitative synthesis // Psychological Bulletin. 2006. Vol. 132, № 3. P. 354–380.

Вопросы и ответы

Сколько терминов программирования нужно знать школьнику?

Для первых программ хватает двух-трёх десятков: алгоритм, переменная, тип, условие, цикл, функция, список, ошибка. Остальные не нужно учить заранее: они приходят по мере того, как растут проекты.

Чем компилятор отличается от интерпретатора?

Компилятор переводит всю программу заранее и создаёт готовый исполняемый файл. Интерпретатор переводит и выполняет код по ходу, поэтому ошибка в середине обнаружится только при запуске этой строки.

Почему программисты говорят по-английски?

Большинство языков программирования и документации создано на английском, поэтому слова вроде «баг» и «дебаг» прижились без перевода. У многих есть русские аналоги: ошибка, отладка.

Массив и список — одно и то же?

В школьном курсе — почти да. В Python есть только список, он может хранить значения разных типов и менять длину. В C++ и Паскале массив обычно строже: один тип и заданная длина.

Что такое «код» в разговоре родителей и детей?

Обычно имеется в виду исходный код — текст программы. «Кодить» — разговорное «программировать», а «код» в Scratch — это собранные из блоков скрипты.

Где найти определения, если слова здесь нет?

Для слов, связанных с Python, — в официальной документации, в разделе глоссария. Для школьной информатики — в учебнике, по которому занимается класс.