[SP-pm] Printer.pm - aberto a comentários.

Fernando Oliveira fernandocorrea at gmail.com
Fri Jan 29 04:20:59 PST 2010


Just another Perl Hacker,
Fernando (SmokeMachine)
http://perl-e.org
Sent from Rio De Janeiro, RJ, Brazil


Em 28 de janeiro de 2010 23:14, Daniel de Oliveira Mantovani <
daniel.oliveira.mantovani em gmail.com> escreveu:

> Bom, com certeza eu não sou experiente, tudo o que sei é a minha pergunta.
> *Onde estão os testes e a documentação?*
>
> A identação está horrível, o seu tab está consumindo oito "espaços",
> ajuste seu editor de texto para consumir apenas quatro espaços.
>
> Dei uma olhada rápida, e me atentei a essa sub rotina:
>
> sub manufacturer{
> my $self = $_[0];
>
> Aqui você pode usar, my $self = shift, vai ter *quase* o mesmo efeito
> do my $self = $_[0], aqui você poderia usar:
> my $self = shift;
> Eu particularmente acho muito mais elegante desse jeito com shift.
>
> open FABRICANTES,"<enterprise.txt";
>
> Sempre quando você usar open, use com três argumentos é mais seguro, e
> não esqueça do *die/warn*.
> Não use bareword, use uma variável.
> Olha só:
> open my $fabricante, q{<} 'enterprise.txt' or die $!
>
> Outra coisa muitíssima importante, sempre quando você abrir um arquivo
> feche-o, depois de utilizar(close $fabricante or die $!).
>
> my @objIDSplited = split /\./,$self->{SysObjID};
> while(<FABRICANTES>){
>
> Não é uma boa prática usar a variável $_ desse jeito, dificulta o
> entendimento do código, olha só:
> while(my $fabri = <FABRICANTE>) {
>
> if ($_ =~ /^$objIDSplited[6]\s/){
> chomp(my @str = split /\t/, $_);
> return ($str[1],$objIDSplited[6]) if wantarray;
> return $str[1];
> last;
>
> Esse "last" não tem sentido, quando você faz o "return" ele já termina.
>
> Olha esse jeito de fazer:
>
> wantarray ? return ($str[1],$objIDSplited[6]) : return $str[1];
>
> Pronto, você troca 3 linhas por uma :)
>
Mantovani, se fosse p/ fazer pequeno, ficaria menor assim:
return$str[1],wantarray?$objIDSplited[6]:()

>
>
> Tem outros "detalhes".
>
> }
> }
> }
>
> 2010/1/28 thiago User <thiago em nerdsland.net>:
> > Ok, Ok. Estou aprendendo a usar o git... coloquei uma versão do módulo
> > Printer.pm que eu uso no sistema de impressão que criamos na Petro - que
> > será batizado de SNMPrinter. Ainda não esta completo, mas estou aberto
> > aos comentários e criticas dos colegas mais experientes.
> >
> >
> > git://gist.github.com/289308.git
> > http://github.com/thiagoglauco/SNMPrinter
> >
> >
> > _______________________________________________
> > SaoPaulo-pm mailing list
> > SaoPaulo-pm em pm.org
> > http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
>
>
> --
> "If you’ve never written anything thoughtful, then you’ve never had
> any difficult, important, or interesting thoughts. That’s the secret:
> people who don’t write, are people who don’t think."
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
-------------- Pr?xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20100129/2788e588/attachment.html>


More information about the SaoPaulo-pm mailing list