В чем разница между макросом и скриптом?

10

Разве это не просто набор инструкций, которые выполняются каким-то интерпретатором? (в отличие от полноценной программы, которая запускается (выполняется) в какой-то компьютерной системе?

Quora Feans
источник

Ответы:

10

В основном разница только в степени. Сценарий имеет тенденцию быть намного более формально определенным, с хорошо определенным языком сценариев позади него, в то время как макрос обычно является чем-то более простым и специальным. Макросы часто «записываются», сообщая программе «следи за всем, что я делаю», а затем выполняя действие, тогда как сценарии обычно вводятся в виде текста на языке сценариев.

Мейсон Уилер
источник
4
Если OP не спрашивает о макросах, таких как макросы препроцессора C или макросы LISP.
FrustratedWithFormsDesigner
1
@ Разочарованный: Да, но из контекста не похоже, что это то, что он просит.
Мейсон Уилер
7

Макросы бывают разных вкусов.

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

C и C ++ также имеют макросы, которые работают таким образом.

Но, как и с большинством вещей в ИТ, зачем иметь один термин или одно значение, когда мы можем сделать вещи более запутанными? Поэтому в некоторых средах (я полагаю, начиная с MS Word) были введены «макросы», которые были записанным набором действий.

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

andy256
источник
4

макрос

Обычно макросы используются в программных приложениях, и они возникли как инструмент для сопоставления ввода пользователя с другим набором вывода пользователя. Ключевым аспектом здесь является изменение пользовательского ввода / вывода на уровне приложений. Поскольку пользовательский ввод имеет тенденцию быть связанным с клавиатурой, мышью и другими устройствами. Выходные данные, измененные макросом, часто ранее записывались одним из этих устройств. Есть также макросы, которые могут быть написаны пользователем, но цель часто состоит в том, чтобы получить желаемый результат.

скрипт

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

Reactgular
источник