Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Метапрограммирование

Спиральная модель | Вычислительные системы | Операционные системы | Выбор языка и среды программирования | Краткий обзор распространенныхпромышленных языков программирования и программных платформ | Структурное программирование | Функциональное программирование | Событийно-ориентированное программирование | Объектно-ориентированное программирование | Аспектно-ориентированное программирование |


Читайте также:
  1. Метапрограммирование

Метапрограммирование — вид программирования, связанный с созданием программ,которые порождают другие программы как результат своей работы (в частности, на стадии компиляции их исходного кода), либо программ, которые меняют себя во время выполнения (самомодифицирующийся код). Первое позволяет получать программы при меньших затратах времени и усилий на кодирование, чем если бы программист писал их вручную целиком, второе позволяет улучшить свойства кода (размер и быстродействие). При этом подходе код программы не пишется вручную, а создается автоматически программой-генератором на основе другой, более простой программы. Такой подход приобретает смысл, если при программировании вырабатываютсяразличные дополнительные правила (более высокоуровневые парадигмы, выполнение требований внешних библиотек, стереотипные методы реализации определенных функций и пр.). При этом часть кода теряет содержательный смысл и становится лишь механическим выполнением правил. Когда эта часть становится значительной, возникает мысль задавать вручную лишь содержательную часть, а остальное добавлять автоматически. Это и проделывает генератор. Возможность изменять или дополнять себя во время выполнения превращает программу в виртуальную машину. Хотя такая возможность существовала уже давно на уровне машинных кодов (и активно использовалась, например, при создании полиморфных вирусов), с метапрограммированием обычно связывают перенос подобных технологий в высокоуровневые языки. Языком, изначально имеющим расширенные механизмы метапрограммирования, является Forth.

 


Дата добавления: 2015-08-27; просмотров: 71 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Визуально-ориентированное программирование| Качество кода. Критерии качества кода

mybiblioteka.su - 2015-2024 год. (0.005 сек.)