[Cascavel-pm] busca em arquivo

Adriano Ferreira a.r.ferreira em gmail.com
Segunda Outubro 23 12:32:29 PDT 2006


On 10/23/06, Diego Mendes Teixeira <diegom em lcc.ufmg.br> wrote:
> Nelson,
>
>  O que seria esses "use strict" e "use warnings"??
>  Vejo como uma vantagem na linguagem perl não ter que declarar variaveis.... porque voce diz ser uma boa pratica???
>

Definitivamente. A imensa maioria dos desenvolvedores Perl inclui

    use strict;
    use warnings;

no começo de seus scripts ou módulos. É um sistema de prevenção de dor
de cabeça. Estes comandos não são usados só em casos muito remotos de
módulos do 'core' que não querem por si disparar a carga destes
módulos. Ainda assim, muitos deles foram testados com estes comandos
também.

Não declarar nada sobre as variáveis leva a erros como:

$ perl -e '$count++ for @ARGV; print "You gave me $cout argumentos\n"'
You gave me  argumentos

($cout ao invés de $count)

$ perl -MYAML -e 'print Dumper { a => 3 }'
(nada)

(Dumper ao invés de Dump)

Estes erros são óbvios com warnings e strict.

$  perl -w -e '$count++ for @ARGV; print "You gave me $cout argumentos\n"'
Name "main::count" used only once: possible typo at -e line 1.
Name "main::cout" used only once: possible typo at -e line 1.
Use of uninitialized value in concatenation (.) or string at -e line 1.
You gave me  argumentos

$ perl -w -MYAML -e 'print Dumper { a => 3 }'
Name "main::Dumper" used only once: possible typo at -e line 1.
print() on unopened filehandle Dumper at -e line 1.


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