Подпрограмма (англ. subroutine)
Поименованная или иным образом идентифицированная часть компьютерной программы, содержащая описание определённого набора действий. Подпрограмма может быть многократно вызвана из разных частей программы.
В языках программирования высокого уровня используется два типа подпрограмм: процедуры и функции.
Источник: https://ru.wikipedia.org/wiki/Подпрограмма
Процедура
Это независимая именованная часть программы, которую после однократного описания можно многократно вызвать по имени из последующих частей программы для выполнения определенных действий.
Источник: https://ru.wikipedia.org/wiki/Подпрограмма#Виды_подпрограмм
Функция
Это подпрограмма специального вида, которая, кроме получения параметров, выполнения действий и передачи результатов работы через параметры имеет ещё одну особенность — она всегда должна возвращать результат. Вызов функции является, с точки зрения языка программирования, выражением, он может использоваться в других выражениях или в качестве правой части присваивания.
Источник: https://ru.wikipedia.org/wiki/Подпрограмма#Виды_подпрограмм
Формальные параметры (параметры)
Это наименование (название) переменных, через которые информация передаётся в/из подпрограмму. Указываются при объявлении или определении подпрограммы.
Источник: https://pas1.ru/parameterformal
Фактические параметры (аргументы)
Переменная или ее значение, подставленные при использовании подпрограмм вместо формального параметра.
Источник: https://dic.academic.ru/dic.nsf/fin_enc/30916
Parameter (computer programming)
https://en.wikipedia.org/wiki/Parameter_(computer_programming)#Parameters_and_arguments
Объявление (declaration)
Это языковая конструкция, которая определяет **Свойства** идентификатора: она объявляет, что слово (идентификатор) "означает" (это переменная, функция, название класса, ...). Объявление используется чтобы уведомить компилятор о существовании сущности. Не происходит выполнение функции, выделения памяти, …Источник: https://en.wikipedia.org/wiki/Declaration_(computer_programming)
Предварительное объявление (forward declaration)
Это объявление идентификатора, для которого программист еще не дал полного определения. Например: известно, что переменная Node - это имя класса, но больше о нём пока ничего не известно. Предварительное объвление будет выглядеть так: class Node;Источник: https://en.wikipedia.org/wiki/Forward_declaration
Определение (definition)
Это объявление + значение и тело.
Не происходит выполнение функции, но выделяется память.
One Definition Rule
https://en.wikipedia.org/wiki/One_Definition_Rule
Вызов функции (call)
Вызов функции выполняется записью её имени, а затем круглых скобочек (). Если функция принимает аргументы, то в круглых скобках передаются аргументы, если нет, скобочки остаются пустые.
Трансляция программы
Преобразование программы, представленной на одном из языков программирования, в программу на другом языке.
Источник: https://ru.wikipedia.org/wiki/Транслятор
Компиляция
Трансляция программы, составленной на исходном языке высокого уровня, в эквивалентную программу на низкоуровневом языке.
Источник: https://dic.academic.ru/dic.nsf/ruwiki/6953
Включить (англ. include)
Сделать составной частью
Источник: https://dic.academic.ru/dic.nsf/dic_synonims/245100/включить
Область видимости (англ. scope) в программировании
Часть программы, в пределах которой идентификатор, объявленный как имя некоторой программной сущности (обычно — переменной, типа данных или функции), остаётся связанным с этой сущностью, то есть позволяет посредством себя обратиться к ней. Говорят, что идентификатор объекта «виден» в определённом месте программы, если в данном месте по нему можно обратиться к данному объекту. За пределами области видимости тот же самый идентификатор может быть связан с другой переменной или функцией, либо быть свободным (не связанным ни с какой из них). Область видимости может, но не обязана совпадать с областью существования объекта, с которым связано имя.
Источник: https://ru.wikipedia.org/wiki/Область_видимости
Name binding
Is the association of entities (data and/or code) with identifiers.
Источник: https://en.wikipedia.org/wiki/Name_binding