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