Влияние производительности генерации сотен динамических методов в Ruby? - PullRequest
0 голосов
/ 17 мая 2010

Какие проблемы с производительностью связаны с созданием сотен динамических методов в Ruby?

Мне было интересно использовать Ruby Preferences Gem и я заметил, что он генерирует кучу вспомогательных методов для каждого установленного вами предпочтения.

Например:

class User < ActiveRecord::Base
  preference :hot_salsa
end

... генерирует что-то вроде:

user.prefers_hot_salsa?         # => false
user.prefers_hot_salsa          # => false

Если существует 100 таких настроек, как это влияет на приложение? Я предполагаю, что это не имеет большого значения, но мне просто интересно, теоретически.

1 Ответ

0 голосов
/ 17 мая 2010

Почти каждая программа на Ruby делает такие вещи, как сумасшедшие - это то, что делает стандартное семейство методов attr_, которые безнаказанно используются практически во всех программах Ruby. Многие программы также делают это в других местах - например, это невероятно часто случается с method_missing взломами. Я никогда не задумывался о том, как именно он работает, но достаточно часто, чтобы, если бы это была серьезная проблема, это уже было замечено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...