Что предназначено термином “рычаг” в программировании?

complete.cases представляется здесь подходящим:

dat[!complete.cases(dat),] <- 0
dat
#  x y z
#1 2 3 5
#2 0 0 0
#3 3 2 1
232
задан Chris 21 January 2009 в 23:52
поделиться

8 ответов

По существу это - место в коде, который позволяет Вам касаться в к модулю, чтобы или обеспечить различное поведение или реагировать, когда что-то происходит.

136
ответ дан Micah 4 November 2019 в 13:11
поделиться

Рычаг является функциональностью, предоставленной программным обеспечением пользователям того программного обеспечения для называния их собственного кода при определенных обстоятельствах. Тот код может увеличить или заменить текущий код.

В былые дни, когда компьютеры были действительно персональными и вирусы были менее распространены (я говорю '80-е), это было столь же просто как исправление самого программного обеспечения операционной системы для вызова кода. Я не забываю писать расширение языка Basic Applesoft на Apple II, которая просто сцепила мой код в ОСНОВНОЙ интерпретатор путем введения вызова к моему коду, прежде чем любая строка была обработана.

Некоторые компьютеры предварительно разработали рычаги, один пример, являющийся потоком ввода-вывода на Apple II. Это использовало такой рычаг для введения целой дисковой подсистемы (Apple II, ROMs были первоначально созданы в дни, где кассеты были носителем основной памяти для ПК). Вы управляли дисками печать код ASCII 4 (CTRL-D) сопровождаемый командой, которую Вы хотели выполнить тогда CR, и это было прервано дисковой подсистемой, которая сцепилась в стандартные программы печати ROM Apple.

Так, например, строки:

PRINT CHR(4);"CATALOG"
PRINT CHR(4);"IN#6"

перечислил бы дисковое содержание, тогда повторно инициализируют машину. Это позволило такие приемы как защита Ваших ОСНОВНЫХ программ путем установки первой строки как:

123 REM XIN#6

тогда использование POKE для вставки CTRL-D символ в том, где эти X был. Затем любой пытающийся перечислять Ваш источник отправил бы повторно инициализировать последовательность через программы вывода, где дисковая подсистема обнаружит его.

Это часто - вид обмана, к которому мы должны были обратиться, для получения поведения, которое мы хотели.

В наше время, с более безопасной операционной системой, это предоставляет средства для рычагов само, так как Вы, как больше предполагается, не изменяете операционную систему, "в полете" или на диске.

Они были вокруг для длинны время. Мэйнфреймы имели их (названный выходами), и много мейнфреймового программного обеспечения использует те средства даже сейчас. Например, свободная система управления исходным кодом, которая идет с z/OS (названный SCLM) позволяет Вам полностью заменять подсистему безопасности путем простого размещения собственного кода в выход.

76
ответ дан paxdiablo 4 November 2019 в 13:11
поделиться

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

14
ответ дан geowa4 4 November 2019 в 13:11
поделиться

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

2
ответ дан dusoft 4 November 2019 в 13:11
поделиться

В универсальном смысле "рычаг" - что-то, что будет позволять Вам, программисту, просматривать и/или взаимодействовать с и/или изменять что-то, на что это уже идет в системе/программе.

, Например, CMS Drupal предоставляет разработчикам рычаги, которые позволяют им принять дополнительные меры после того, как "узел содержания" создается. Если разработчик не реализует рычаг, узел создается на нормальный. Если разработчик реализует рычаг, у них может быть некоторый дополнительный код, выполненный каждый раз, когда узел создается. Этот код мог сделать что-либо, включая откат и/или изменение первоначального иска. Это могло также сделать что-то несвязанное с созданием узла полностью.

обратный вызов А мог считаться определенным видом рычага. Путем реализации функциональности обратного вызова в систему та система позволяет Вам назвать некоторый дополнительный код после того, как действие завершилось. Однако сцепление (как общее обозначение) не ограничено обратными вызовами.

Другой пример. Иногда Веб-разработчики будут обращаться к именам классов и/или идентификаторам на элементах как рычаги. Поэтому путем размещения идентификатора/имени класса в элемент, они могут тогда использовать JavaScript для изменения того элемента, или "рычага в" к документу страницы. (это расширяет значение, но это является наиболее часто используемым и стоит упомянуть)

38
ответ дан Alan Storm 4 November 2019 в 13:11
поделиться

Часто сцепление относится к сообщение Win32, сцепляющееся или эквиваленты Linux/OSX, но более в общем сцепление просто уведомляет другой объект/окно/программу/и т.д., что Вы хотите быть уведомленными, когда указанное действие происходит. Например: Наличие всех окон в системе уведомляет Вас, поскольку они собираются закрыться.

Как правило, сцепление несколько опасно начиная с выполнения его, не понимая, как это влияет на систему, может привести к нестабильности или в очень leas неожиданное поведение. Это может также быть ОЧЕНЬ полезно при определенных обстоятельствах, мысли. Например: СВЯЗЫВАЕТ использование это для определения, какие окна это должно показать, что это - счетчик кадр/с на.

1
ответ дан Toji 4 November 2019 в 13:11
поделиться

Цепочка рычагов является рядом функций в который каждый вызовы функции следующее. То, что является значительным о цепочке рычагов, - то, что программист может добавить другую функцию к цепочке во время выполнения. Один способ сделать это должно искать известное местоположение, где адрес первой функции в цепочке сохранен. Вы тогда сохраняете значение того указателя функции и перезаписываете значение в начальном адресе с адресом функции, которую Вы хотите вставить в цепочку рычага. Функция тогда вызвана, ведет свой бизнес и вызывает следующую функцию в цепочке (если Вы не решаете иначе). Естественно, существует много других способов создать цепочку рычагов от записи непосредственно в память к использованию средств метапрограммирования языков как Ruby или Python.

примером цепочки рычагов является способ, которым приложение MS Windows обрабатывает сообщения. Каждая функция в цепочке обработки или обрабатывает сообщение или отправляет ее в следующую функцию в цепочке.

1
ответ дан Joe Soul-bringer 4 November 2019 в 13:11
поделиться

В системе управления контентом Drupal 'рычаг' имеет относительно определенное значение. Когда внутреннее событие имеет место (как создание содержания или пользовательский вход в систему, например), модули могут ответить на событие путем реализации специальной функции "рычага". Это сделано с помощью соглашения о присвоении имен - [your-plugin-name] _user_login () для события User Login, например.

из-за этого соглашения, базовые события упоминаются как "рычаги" и появляются с именами как "hook_user_login" и "hook_user_authenticate ()" в документации API Drupal.

1
ответ дан Eaton 4 November 2019 в 13:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: