[Moscow.pm] дефолтные методы объекта и AUTOLOAD

Akzhan Abdulin akzhan.abdulin на gmail.com
Чт Мар 29 01:26:48 PDT 2012


Это не совсем так. Из Ruby method_missing не выпиливали.

И к тому же это совсем не медленно, если создавать методы по требованию.
http://habrahabr.ru/post/52532/

29 марта 2012 г. 12:22 пользователь Orlovsky Alexander <nordicdyno на yandex.ru
> написал:

> Не используйте AUTOLOAD
> 1. Это медленно.
> 2. Его использование порождает более сложный код
>
> Из руби, кстати его или уже выпилили или собираются.
>
> 28.03.2012, 13:21, "Nick Knutov" <mail на knutov.com>:
> > Есть ряд объектов, у которых есть заранее известный, но иногда
> > меняющийся [в процессе разработки] список полей, для которых надо писать
> > геттеры вида
> >
> > sub id { my $self = shift; return $self->{id}; }
> >
> > Или с логикой чуть посложнее, но это еще один список полей и полностью
> > одинаковый код, кроме имени поля.
> >
> > Возникла мысль генерить эти методы из заранее определенного списка на
> > этапе, например, загрузки модуля или компиляции кода. perldoc что?
> >
> > Альтернативный вариант - сделать то же самое через AUTOLOAD, вот только
> > в гугле находятся несколько очень разных примеров, как это делается, и в
> > каждом говорится, что примеров есть разные, но вот именно этот способ
> > лучше и избавит от разных проблем и багов. So, как все же это надо
> делать?
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20120329/849afb48/attachment-0001.html>


Подробная информация о списке рассылки Moscow-pm