Многие языки программирования и фреймворки действительно / разрешают / требуют чего-то, для чего я не могу найти названия, хотя, вероятно, такое есть в компьютерных науках. В основном они привязываются к переменной / объекту / классу / функции по имени.
Пример Flex ("selectAll ()"):
<mx:Button click="selectAll()" label="Select All"/>
Пример Mate ("цена"):
<Injectors target="{QuotePanel}">
<PropertyInjector targetKey="price" source="{QuoteManager}" sourceKey="currentPrice" />
</Injectors>
Пример Java ("Foo"):
Class.forName("Foo")
Есть много других примеров. Вы уловили идею. Что меня беспокоит, так это то, что практически нет способа проверить это во время компиляции, и среда IDE мало что может сделать, чтобы помочь с точки зрения автозавершения кода, навигации и рефакторинга. Но не в этом дело.
У меня вопрос, как это называется? Я не думаю, что это одно из следующих: динамическое связывание, привязка имени, отражение
Обновление: нет, это не викторина, извините, если это так. Для программирования это просто вопрос «назови эту песню».
Обновление: ответы, которые помогли:
- От Тима Лешера: Это называется «позднее связывание», «динамическое связывание» или «связывание во время выполнения». Тот факт, что он привязывается строкой, - это всего лишь деталь реализации ...
- От Конрада Рудольфа: ... это просто ввод для интерпретатора.
Обновление: как люди правильно заметили, некоторые примеры связаны с поздним связыванием, некоторые - с отражением, некоторые - с оценкой (интерпретацией) во время выполнения и т. д. Однако я прихожу к выводу, что, вероятно, нет имени, которое описывает торговый центр. Это просто набор примеров, у которых есть что-то общее, но недостаточно, чтобы дать этому название. Мне понравился ответ «все в виде строки», но, несмотря на то, что он забавен, он также не в полной мере отражает его значение.