[Cascavel-pm] Enc: Res: Res: "Subroutine new redefined at"

Daniel ® Antunes danielrantunes em yahoo.com.br
Quarta Julho 11 05:42:13 PDT 2007


    Esquece, achei algumas coisas na web...
    Realmente os códigos sem o uso do Exporter.pm e Cia ficam mais limpos.
    Valeu pela dica.
 
Daniel ® Antunes
profissional de informática
msn daniel.legend em terra.com.br
yahoo-messenger danielrantunes em yahoo.com.br
mobile + 55 11 8965 2999
gnu/linux user #238553

----- Mensagem encaminhada ----
De: Daniel ® Antunes <danielrantunes em yahoo.com.br>
Para: Cascavel Perl Mongers <cascavel-pm em pm.org>
Enviadas: Quarta-feira, 11 de Julho de 2007 8:34:09
Assunto: [Cascavel-pm] Res:  Res:  "Subroutine new redefined at"

    Oi Alceu, bom dia. Confesso que ando me sentindo confuso desde que voltei a postar minhas dúvidas na lista, hehehehe. Minhas bolas estão batendo na trave.
    Estou me aventurando no Perl já há algum tempo. Este software que enviei um trecho está em pleno funcionamento, com um desempenho e estabilidade espetacular, o que me fez apaixonar-me perdidamente pela linguagem; não só por estas duas características mas também pela extrema produtividade que ela oferece.
    Bom, estou reestruturando o software, procurando em primeiro lugar limpar o código, pq como foi feito nas minhas primeiras aventuras com Perl ele está bastante sujo e segundo abrir caminhos para novas implementações que se fazem necessárias, no entanto, dificeis devido à estrutura atual dos
 módulos/scripts.
    Minhas práticas se baseiam nos livros : Perl Programming (o clássico livro do camelo), Perl for C Programmers (me elucidou uma série de dúvidas), Gerenciamento de Dados com Perl (livro que ganhei e não acrescentou muito) e Advanced Perl Programming (este é muito legal para entender o backstage). Eu os li há bastante tempo e atualmente têm me servido somente para consulta; quero dizer que não peguei nenhuma literatura mais atual. Neles a abordagem para utilização de OOP é a mesma : Exporter.pm e váriaveis @ISA e @EXPORT.
    Você não poderia me indicar, ou enviar caso tenha disponível, uma nova abordagem de OOP usando Perl.
    Agradeço pela ajuda prestada e pelas dicas até o momento e antecipadamente por mais esta força se estiver a seu alcance.
    Abraço.
    
 
Daniel ® Antunes
profissional de
 informática
msn daniel.legend em terra.com.br
yahoo-messenger danielrantunes em yahoo.com.br
mobile + 55 11 8965 2999
gnu/linux user #238553

----- Mensagem original ----
De: Alceu Rodrigues de Freitas Junior <glasswalk3r em hotmail.com>
Para: Cascavel Perl Mongers <cascavel-pm em pm.org>
Enviadas: Terça-feira, 10 de Julho de 2007 15:35:36
Assunto: Re: [Cascavel-pm] Res:  "Subroutine new redefined at"




P
{
margin:0px;padding:0px;}
body
{
FONT-SIZE:10pt;FONT-FAMILY:Tahoma;}

Date: Tue, 10 Jul 2007 11:11:51 -0700
From: danielrantunes em yahoo.com.br
To: cascavel-pm em pm.org
Subject: [Cascavel-pm] Res:  "Subroutine new redefined at"


 

.ExternalClass DIV
{}

    Acho que resolvi...
    Eu estava colocando o método "new" no @EXPORT.
    Tirei, ele parou de reclamar...

 Argh!

Você não deveria usar o módulo Exporter.pm se quer usar seu módulo com orientação à objetos. Dá para usar das duas formas, mas é meio esquisito... ou você usa um, ou usa o outro. A menos que seu projeto seja destinado a um grande número de programadores que preferem um ou outro método (o venerável CGI.pm é assim).

Se você vai usar orientação à objetos no seu módulo, esqueça o Exporter.pm, você não vai precisar dele. E ainda que vá (porque você acha sexy ou sei lá outro motivo) é considerado boa prática usar @EXPORT_OK ao invés de @EXPORT sempre que for possível. Isso evita poluir o namespace e
 problemas de colisão de nomes de métodos/funções, como aconteceu com você.

Meu conselho é que você dê uma boa olhada sobre a documentação apropriada do Perl para usar orientação à objetos. Por ser uma linguagem flexível, Perl permite você a fazer qualquer tipo de escolha, inclusive as ruins.

[]'s
Alceu



Live Earth is coming.  Learn more about the hottest summer event - only on MSN. Check it out!_______________________________________________
Cascavel-pm mailing list
Cascavel-pm em pm.org
http://mail.pm.org/mailman/listinfo/cascavel-pm









      Novo Yahoo! Cadê? - Experimente uma nova busca. _______________________________________________
Cascavel-pm mailing list
Cascavel-pm em pm.org
http://mail.pm.org/mailman/listinfo/cascavel-pm






       
____________________________________________________________________________________
Novo Yahoo! Cadê? - Experimente uma nova busca.
http://yahoo.com.br/oqueeuganhocomisso 
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070711/d9c20132/attachment-0001.html 


Mais detalhes sobre a lista de discussão Cascavel-pm