Agora, quando eu fazer um programa, vou saber quando usar.<br>obrigado gente<br>[]&#39;s<br><br><div class="gmail_quote">2008/11/13 André Garcia Carneiro <span dir="ltr">&lt;<a href="mailto:andre.garcia.carneir@terra.com.br">andre.garcia.carneir@terra.com.br</a>&gt;</span><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Eu particularmente não gosto de here-docs. Sempre quando vejo um tenho a sensação de não estar mais lidando com<br>

Perl...rsrsrs! Por isso se fosse precisar de um &#39;textão&#39; dentro do código(embora preferisse que estivesse<br>
dentro de um template ou algo assim), faria de formas diferentes:<br>
<br>
&lt;pseudocode&gt;<br>
<br>
my $bigtext = qq[some big text here<br>
blablabla<br>
];<br>
<br>
#ou mesmo assim:<br>
<br>
my $var_to_interpolate = &#39;bla&#39;;<br>
my $bigtext = q{some big text here $var_to_interpolate<br>
more text here.<br>
<br>
};<br>
<br>
&lt;/pseudocode&gt;<br>
<br>
Pra mim é mais confortável lidar com isso do que com here-docs.<br>
<br>
Agora o lance de &#39;forma-culta&#39; eu não entendi mesmo... o q o Daniel quis dizer com isso?</blockquote><div>Tipo forma não culta é usar Expressões Regulares para extrair HTML, e forma culta é extrair usando um módulo adequado, foi nesse sentido ^^ <br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
<br>
<br>
Cheers!<br>
<br>
<br>
<br>
---------- Cabeçalho original -----------<br>
<br>
De: saopaulo-pm-bounces+andre.garcia.carneir=<a href="http://terra.com.br" target="_blank">terra.com.br</a>@<a href="http://pm.org" target="_blank">pm.org</a><br>
Para: <a href="mailto:saopaulo-pm@mail.pm.org">saopaulo-pm@mail.pm.org</a><br>
Cópia:<br>
Data: Thu, 13 Nov 2008 09:47:54 -0200<br>
Assunto: Re: [SP-pm] HERE-DOCS: Forma culta ? Quando usar ?<br>
<div><div></div><div class="Wj3C7c"><br>
&gt; Fields,<br>
&gt;<br>
&gt; Eu vou fazer um contra-ponto aqui com você. Eu acho que o que você escreveu<br>
&gt; faz muito sentido, MAS depende do contexto. Você, e vários outros aqui,<br>
&gt; desenvolvem sistemas de médio a maior porte. Separar a implementação das<br>
&gt; regras de negócio de um blocão de conteúdo estático faz todo o sentido do<br>
&gt; mundo num contexto desses.<br>
&gt;<br>
&gt; Mas em programas pequenos, e aqui estou pensando naqueles scripts que eu<br>
&gt; faço e que são muito simples, não vale a pena fazer isso. O exemplo de<br>
&gt; &quot;usage&quot; é perfeito para isso, e é exatamente o que faço nos meus scripts.<br>
&gt;<br>
&gt; my $0.02<br>
&gt;<br>
&gt; []s<br>
&gt;<br>
&gt; 2008/11/13 Luis Motta Campos &lt;<a href="mailto:luismottacampos@yahoo.co.uk">luismottacampos@yahoo.co.uk</a>&gt;<br>
&gt;<br>
&gt; &gt; Bruno Borela wrote:<br>
&gt; &gt;<br>
&gt; &gt;&gt; Do livro &quot;Perl Best Practices&quot; do Damian Conway:<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; &nbsp;The &quot;break-after-newlines-and-concatenate&quot; approach is fine for a small<br>
&gt; &gt;&gt;&gt; number of lines, but it starts to become inefficient - and<br>
&gt; &gt;&gt;&gt; ugly - for larger chunks of text.<br>
&gt; &gt;&gt;&gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt; Bom, eu acho que eu tenho poder de fogo para discordar do &nbsp;Damian Conway.<br>
&gt; &gt; :) Eu discordo, e me explico.<br>
&gt; &gt;<br>
&gt; &gt; Se, por qualquer motivo que seja, você tem de misturar quantidades absurdas<br>
&gt; &gt; de texto com seu programa, eu posso garantir que alguma coisa está errada<br>
&gt; &gt; com seu projeto de software.<br>
&gt; &gt;<br>
&gt; &gt; Eu não gosto e não recomendo usar here-docs para nada: eles são<br>
&gt; &gt; desajeitados, menos óbvios que qualquer outro tipo de string literal, e<br>
&gt; &gt; permitem que a gente construa estruturas gigantescas, separando o código por<br>
&gt; &gt; um &quot;mar&quot; de texto.<br>
&gt; &gt;<br>
&gt; &gt; Bom, qual é o problema? Erros lógicos são mais complicados de pegar se você<br>
&gt; &gt; separa os &quot;pedaços&quot; e não pode olhar para todos eles ao mesmo tempo.<br>
&gt; &gt;<br>
&gt; &gt; Claro, todo mundo um dia precisou cuspir uma mensagem grande, ou um trechão<br>
&gt; &gt; de HTML ou Javascript, ou armazenar um &quot;monstrinho SQL&quot; em algum lugar. As<br>
&gt; &gt; minhas recomendações, em ordem de preferência:<br>
&gt; &gt;<br>
&gt; &gt; &nbsp;1. Se é uma coisa recorrente, encontre um módulo que resolva o problema<br>
&gt; &gt; armazenando os dados em arquivos de dados (que podem ser lidos conforme a<br>
&gt; &gt; conveniência).<br>
&gt; &gt;<br>
&gt; &gt; &nbsp;2. Se você tem apenas um texto grande, use a secção __DATA__ do seu<br>
&gt; &gt; programa.<br>
&gt; &gt;<br>
&gt; &gt; &nbsp;3. Se você não está satisfeito com os módulos e tem mais de um texto<br>
&gt; &gt; grande para gerenciar, use o módulo Exporter para implementar um ou mais<br>
&gt; &gt; módulos (organize por alguma forma lógica e intuitiva) que exportem<br>
&gt; &gt; constantes com o teu texto, e lá, longe da implementação das tuas regras de<br>
&gt; &gt; negócio, use here-docs. Exemplo:<br>
&gt; &gt;<br>
&gt; &gt; &nbsp;package My::Big::Text;<br>
&gt; &gt; &nbsp;use strict;<br>
&gt; &gt; &nbsp;use warnings;<br>
&gt; &gt; &nbsp;use Exporter;<br>
&gt; &gt; &nbsp;our ( @EXPORT_OK, @EXPORT ) = qw( $BigText );<br>
&gt; &gt;<br>
&gt; &gt; &nbsp;$My::Big::Text = &lt;&lt;&#39;BIG_TEXT&#39; ;<br>
&gt; &gt; &nbsp; &nbsp;bla bla bla<br>
&gt; &gt; &nbsp;BIG_TEXT<br>
&gt; &gt;<br>
&gt; &gt; &nbsp;__END__<br>
&gt; &gt;<br>
&gt; &gt; Espero que isso sirva como exemplo para duas coisas:<br>
&gt; &gt;<br>
&gt; &gt; 1. O PBP é bom, mas não está sempre 100% correto. Use seu cérebro!<br>
&gt; &gt; 2. Existem formas mais &quot;complicadas&quot; de resolver o problema de uma forma<br>
&gt; &gt; mais elegante. Isso é parte da filosofia básica por trás do Perl: TIMTOWTDI.<br>
&gt; &gt;<br>
&gt; &gt; Putamplexos.<br>
&gt; &gt; --<br>
&gt; &gt; Luis Motta Campos is a software engineer,<br>
&gt; &gt; Perl Programmer, foodie and photographer.<br>
&gt; &gt; _______________________________________________<br>
&gt; &gt; SaoPaulo-pm mailing list<br>
&gt; &gt; <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
&gt; &gt; <a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
&gt; &gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Alexei Znamensky [russoz_gmail_com] [<a href="http://russoz.wordpress.com" target="_blank">russoz.wordpress.com</a>] [<br>
&gt; <a href="http://www.flickr.com/photos/alexeiz" target="_blank">www.flickr.com/photos/alexeiz</a>]<br>
&gt; &quot;Though we live in trying times, we&#39;re the ones who have to try&quot;<br>
&gt;<br>
<br>
</div></div><font color="#888888">--<br>
André Garcia Carneiro<br>
Developer(Perl/PHP)<br>
Member of &quot;São Paulo Perl Mongers&quot; - <a href="http://sao-paulo.pm.org" target="_blank">http://sao-paulo.pm.org</a><br>
</font><div><div></div><div class="Wj3C7c"><br>
_______________________________________________<br>
SaoPaulo-pm mailing list<br>
<a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>print &quot;\x54\x68\x65\x20\x53\x69\x6c\x65\x6e\x74\x20\x47\x75\x61\x72\x64\x69\x61\x6e&quot;,$/<br><br>( Procuro emprego CV:<br><a href="http://www.4shared.com/file/71236573/2c80149/curriculo.html">http://www.4shared.com/file/71236573/2c80149/curriculo.html</a> )<br>