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

Andre Carneiro andregarciacarneiro at gmail.com
Fri Jan 29 05:39:55 PST 2010


2010/1/29 Daniel de Oliveira Mantovani <daniel.oliveira.mantovani at gmail.com>

> 2010/1/29 Andre Carneiro <andregarciacarneiro at gmail.com>:
> > Acho q vc não entendeu o ponto da 'frescura'.
>
> Ah sim, '<' ou q{<} tanto faz. O que eu quis deixar claro é que
> identar com oito espaços é ruim.
> perldoc perlstyle
>
> Each programmer will, of course, have his or her own preferences in
> regards to formatting,but there are some general guidelines that will
> make your programs easier to read, understand, and maintain.
>
>
Eu ainda considero isso uma questão pessoal, e acho que o texto acima
concorda comigo em parte. Não gosto de código espremido, mas isso sou eu...


> ...
> ·   4-column indent.
> ...
>
> Por exemplo imagina a situação que tem 3/4 loops dentro do outro, o
> seu editor de texto vai ter que quebrar linha, isso dificulta a visão.
>
>
Três ou quatro loops aninhados já é por si só difícil de compreender,
idependentemente da quantidade de  espaços no tab. Nesse caso eu reavaliaria
a maneira como isto está sendo feito ao invés de espremer o código e deixar
mais difícil de ler(pelo menos para mim).


> >
> > A frescura estava em fazer q{<}, ao invés de simplesmente '<'. O resto do
> > código é tratamento de erro(não muito bom, por sinal). Mas isso não tem
> nada
> > de diferente.
> >
> > 'open... or die $!' é uma situação que eu considero ruim, simplemente
> porque
> > para o programa sem maiores explicações. E isto não é uma boa idéia(ao
> meu
> > ver, pelo menos). Eu quis expressar apenas que é melhor ter no mínimo,
> algum
> > tipo de tratamento de erro...
>
> Na verdade André se fosse só "or die" seria sem explicações, a
> variável $! contém o erro, então "or die $!" vai te dizer o problema
> :)
>
> Ah sim, o die dá uma resposta do tipo 'Arquivo não encontrado', mas qual
arquivo? Se você trabalha com mais de um arquivo no código, já fica um saco
caçar qual arquivo está com problemas, não acha? Acho mais interessante pelo
menos colocar o nome do arquivo junto com o die para facilitar a
visualização do erro. E se o código não deve parar na leitura do
arquivo(considerando que na situação do código, a leitura do arquivo não
seja crítica para o funcionamento do resto do programa), aí o 'eval' é mais
do que justificado, é uma necessidade.


> Já teve situações, muitas situações em que eu perdi meu tempo
> simplesmente porque o código não tinha um "die" no open, *o software
> tem que dar erro quando ele tem que dar erro.*
>
>
Mais uma razão para você usar 'eval' ao meu ver... ou pelo menos colocar o
nome do arquivo junto com $!.


Cheers!

>
> >
> >
> > 2010/1/29 Nelson Ferraz <nferraz at gmail.com>
> >>
> >> > Q frescura! porque não simplesmente:
> >> > my $file = 'enterprise.txt'
> >> > eval{open my $fabricante,'<', $file};
> >> > if($!){
> >> >                print "\nProblemas ao abrir o arquivo '$file'  -  $!";
> >> > }else {
> >> > #Alguma coisa util aqui...
> >> >
> >> > }
> >>
> >> Uma razao simples: consistencia.
> >>
> >> A forma mais usada pela comunidade e':
> >>
> >> open my $f, '<', $file or die "Can't open: $!\n";
> >> # ...
> >> close $f;
> >>
> >> Se voce escrever de maneira diferente, todo mundo que for ler seu
> >> codigo vai ter que parar por um momento e analisar o codigo, para
> >> tentar descobrir porque diabos voce fez daquele jeito.
> >>
> >> TIMTOWTDI nao significa que voce deve, necessariamente, fazer tudo de
> >> uma maneira diferente.
> >>
> >> --
> >> Nelson Ferraz
> >>
> >> Free Software Foundation Associate Member #3203
> >> Projeto Software Livre Brasil (www.softwarelivre.org.br)
> >> Sociedade Perl do Brasil (www.perl.org.br)
> >> Rede Livre de Compartilhamento de Cultura Digital
> >> _______________________________________________
> >> SaoPaulo-pm mailing list
> >> SaoPaulo-pm at pm.org
> >> http://mail.pm.org/mailman/listinfo/saopaulo-pm
> >
> >
> >
> > --
> > André Garcia Carneiro
> > Analista/Desenvolvedor Perl
> >
> >
> >
> > _______________________________________________
> > SaoPaulo-pm mailing list
> > SaoPaulo-pm at 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 at pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>



-- 
André Garcia Carneiro
Analista/Desenvolvedor Perl
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20100129/6ad03dfe/attachment.html>


More information about the SaoPaulo-pm mailing list