<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18702">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT size=2 face=Arial>Marcio eu faço assim.</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>funcao que sera usada em todos os arquivos por 
exemplo</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>sub soma;</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>crio um arquivo soma.pl dentro dele coloco  a 
função</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>sub somaValor {</FONT></DIV>
<DIV><FONT size=2 face=Arial>    my ($a,$b)=undef;</FONT></DIV>
<DIV><FONT size=2 face=Arial>    ($a,$b)=@_;</FONT></DIV>
<DIV><FONT size=2 face=Arial>    $a +=$b;</FONT></DIV>
<DIV><FONT size=2 face=Arial>    return $a;</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>}</FONT></DIV>
<DIV><FONT size=2 face=Arial>1;</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>sempre que eu precisar da soma em algum arquivo eu 
faço</FONT></DIV>
<DIV><FONT size=2 face=Arial>require "soma.pl"; #declarando a 
dependencia</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>my $a=somaValor($numero1,$numero2);</FONT></DIV>
<DIV><FONT size=2 face=Arial>say $a;</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>em alguns casos também pode secriar um módulo 
espefico para retornar o valor desejado</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV>Ricardo Stock<BR><A 
href="http://www.stocksistemas.com.br">www.stocksistemas.com.br</A></DIV>
<BLOCKQUOTE 
style="BORDER-LEFT: #000000 2px solid; PADDING-LEFT: 5px; PADDING-RIGHT: 0px; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="FONT: 10pt arial; BACKGROUND: #e4e4e4; font-color: black"><B>From:</B> 
  <A title=marciorp@gmail.com href="mailto:marciorp@gmail.com">Marcio - 
  Google</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A title=saopaulo-pm@mail.pm.org 
  href="mailto:saopaulo-pm@mail.pm.org">saopaulo-pm@mail.pm.org</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Friday, March 22, 2013 8:27 
PM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> [SP-pm] Subs</DIV>
  <DIV><BR></DIV>Mongers,
  <DIV><BR></DIV>
  <DIV>Mais algumas dúvidas sobre "boas práticas".</DIV>
  <DIV><BR></DIV>
  <DIV>1. Tenho algumas funções (sub) que são comuns a mais de um aplicativo. 
  Qual a forma mais simples, prática e elegante de compartilha-las entre vários 
  scripts, sendo que todos ficam no mesmo diretório? Hoje, tenho o mesmo código 
  repetido dentro do arquivo de cada script.</DIV>
  <DIV><BR></DIV>
  <DIV>2. Tenho algumas funções (sub) que precisam retornar mais de uma 
  informação, as vezes até 5. Hoje como não sei fazer isso, 
  declaro variáveis no inicio do script e antes de chamar a sub, 
  atribuo "undef" para as variáveis. Dentro da sub eu atribuo os valores 
  que preciso a elas e depois da sub eu leio essas variáveis. Não me causa 
  problema, só acho estranho e pouco elegante. Exemplo de retorno: Se deu erro 
  (1 ou 0), Registro que deu erro (numérico), Descrição do Erro (string), Se 
  conseguiu cancelar do IPBX (1 ou 0).</DIV>
  <DIV><BR></DIV>
  <DIV>3. Declaro as funções (sub) assim:</DIV>
  <DIV>sub NomeDaSub {</DIV>
  <DIV>   my ($NomeDoPrimeiroParametro, ..., 
  $NomeDoUltimoParametro)=@_;</DIV>
  <DIV>}<BR clear=all>
  <DIV>   Está certo? Ou tem uma técnica "mais" correta?</DIV>
  <DIV><BR></DIV>
  <DIV><BR></DIV>
  <DIV>Em tempo, não estão faltando artigos no Equinócio?</DIV>
  <DIV><BR></DIV><BR>[...]'s<BR><BR>Marcio </DIV>
  <P>
  <HR>

  <P></P>=begin disclaimer<BR>   Sao Paulo Perl Mongers: 
  http://sao-paulo.pm.org/<BR> SaoPaulo-pm mailing list: 
  SaoPaulo-pm@pm.org<BR> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm><BR>=end 
  disclaimer<BR></BLOCKQUOTE></BODY></HTML>