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

Nick Knutov mail на knutov.com
Ср Мар 28 02:21:48 PDT 2012


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

sub id { my $self = shift; return $self->{id}; }

Или с логикой чуть посложнее, но это еще один список полей и полностью 
одинаковый код, кроме имени поля.

Возникла мысль генерить эти методы из заранее определенного списка на 
этапе, например, загрузки модуля или компиляции кода. perldoc что?

Альтернативный вариант - сделать то же самое через AUTOLOAD, вот только 
в гугле находятся несколько очень разных примеров, как это делается, и в 
каждом говорится, что примеров есть разные, но вот именно этот способ 
лучше и избавит от разных проблем и багов. So, как все же это надо делать?

-- 
Best Regards,
Nick Knutov
http://knutov.com
ICQ: 272873706
Voice: +7-904-84-23-130


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