Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Paul Kulchenko                       2:5020/400     15 Jun 2000  19:26:05
 To : All
 Subject : Re: Exporter, @EXPORT, @EXPORT_OK...
 -------------------------------------------------------------------------------- 
 
 Hi, Denis!
 Denis Mittsev wrote in message <86zoonljyv.fsf@dmhome.orsk.ru>...
 
 >paulclinger@yahoo.com writes:
 >
 >> >2) описать обязательные переменные в tag, и
 >> >use Module qw(:tag $x $y);
 >> Правильным является как обычно вариант 3.
 >> 3) use Module qw(:DEFAULT $x $y)
 >
 > Hу етишкин кот.. даже в мане сказано, да глаз уже замылился.
 >Благодарствуем ! Тогда следующий вопрос: посовеуйте чтиво по созданию
 >модулей одновременно и с объектным интерфейсом, и с интерфейсом через
 >экспорт. Пример для подражания - CGI.pm, только великоват он для обучения,
 
 А ты возьми одну функцию и разбери как она работает в двух вариантах.
 
 >может где теория этого дела расписана ? Или суперсекретов здесь нет и
 
 кто-то
 Можно порекомендовать Object Oriented Perl by Damian Conway, но я его видел
 в оригинале и у меня большие сомнения по поводу русского перевода.
 Практически все подобные вопросы там рассмотрены.
 
 >может сформулировать основные положения ?
 
 Вообщем-то ничего хитрого там нет. Внутри метод от функции ничем не
 отличается (почти), любая функция может быть вызвана как метод и наоборот.
 Однако необходимо добавить небольшой код внутри функции, поскольку функция
 вызванная как метод получит один дополнительных параметер, ссылку на объект,
 или имя класса, в зависимости от того, как ее вызвали: как функцию класса
 или как метод объекта. В CGI.pm для этого добавили один вызов, и если
 функцию вызвали как функцию, Stein создает объект специального класса
 (CGI::DefaultClass) и заносит на него ссылку. Дальше все как обычно. Много
 наворочено, конечно, с динамической загрузкой и пр., но к данному вопросу
 это отношения не имеет, так что просто игнорируй и все. Естественно никто не
 мешает написать две РАЗHЫЕ функции для OO и неOO интерфейсов, но это как-то
 не очень красиво
 
 Читать perltoot, perlbot, perlobj и исходник CGI.pm. Должен разобраться.
 Если нет, пиши.
 
 Best wishes, Paul.
 --- ifmail v.2.15dev5
  * Origin: Rostelecom/Internet Centre (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Exporter, @EXPORT, @EXPORT_OK...   Paul Kulchenko   15 Jun 2000 19:26:05 
Архивное /ru.perl/6552da322671.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional