Макрокоманда, макроопределение[1] или мáкрос[2] — программный алгоритм действий, записанный пользователем. Часто макросы применяют для выполнения рутинных действий. А также макрос — это символьное имя в шаблонах, заменяемое при обработке препроцессором на последовательность символов, например: фрагмент html-страницы в веб-шаблонах, или одно слово из словаря синонимов в синонимизаторах.
Во многих офисных продуктах (OpenOffice.org, Microsoft Office и др.), в графических программах (например, CorelDRAW) при обработке макроса автоматически выполняется заданная для каждого макроса последовательность действий — нажатия на клавиши, выбор пунктов меню и т. д. Предоставляется интерфейс для записи новых и перезаписи существующих макросов. Также существуют текстовые редакторы, поддерживающие макросы, например Notepad++.
Используя макросы, можно значительно (в десятки, а то и в сотни раз) увеличить эффективность работы с приложением. Помимо выполнения набора встроенных в приложение команд, макрос позволяет производить обработку внешних файлов, загрузку и передачу файлов и данных через интернет, чтение и изменение настроек операционной системы. В большинстве случаев макрорекордер (режим записи действий пользователя в виде макроса) выдаёт код, нуждающийся в доработке. Но, тем не менее, и такой макрос значительно сокращает время, требующееся на выполнение рутинных операций.
Корректный перевод термина с английского — «макрокоманда». Слово «макрос» (от macros — формы множественного числа слова macro) получило распространение благодаря использованию в локализованных продуктах американской корпорации Microsoft[источник не указан 1532 дня].
В языках ассемблера, а также в некоторых других языках программирования, макрос — символьное имя, заменяемое при обработке препроцессором на последовательность программных инструкций.
Для каждого интерпретатора (языков ассемблера) существует специальный синтаксис объявления и вызова макросов. Макрос может «разворачиваться» в различные последовательности инструкций при каждом вызове, в зависимости от сработавших разветвлений внутри макроса и переданных ему аргументов.
В Лиспе, благодаря развитой макросистеме, макропрограммирование позволяет расширять язык новыми формами и настройками. То есть, с помощью макросов можно определить предметно-ориентированный язык для решаемой задачи и процессор (транслятор или конвертор) для него. Под процессором в данном случае понимается программа, которая реализует типы данных и операции абстрактного языка на другом языке[3].
С помощью макропрограммирования можно осуществить и раскрутку компилятора[3].
![]() |
Это заготовка статьи о компьютерных языках. Вы можете помочь проекту, дополнив её. |
Эту статью следует викифицировать. |
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .