<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:times new roman,new york,times,serif;font-size:12pt"><div>Perdón...<br><br>use nes;<br>my $container = nes_container-&gt;new('template.nhtml');<br>my $nes_tags = {};<br><br>$nes_tags-&gt;{'number'} = int rand 10;<br>$container-&gt;set_tags(%tags);<br>$container-&gt;interpret();<br>$container-&gt;out();<br><br>Me he levantado a las 6 y me acosté tarde...<br></div><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;"><br><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;"><font size="2" face="Tahoma"><hr size="1"><b><span style="font-weight: bold;">De:</span></b> Skriptke &lt;skriptke@yahoo.es&gt;<br><b><span style="font-weight: bold;">Para:</span></b> Lista de correo de Madrid Perl Mongers &lt;madrid-pm@pm.org&gt;<br><b><span style="font-weight: bold;">Enviado:</span></b> vie,19 febrero, 2010
 11:51<br><b><span style="font-weight: bold;">Asunto:</span></b> Re: [Madrid-pm] Curso acelerado de Nes<br></font><br><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;"><div>También puedes hacer un uso tradicional de Nes, pero como ofrece ninguna ventaja sobre otros sistemas de plantillas está sin documentar, aunque lo haré cuando tenga un rato:<br><br>use nes;<br>my $container = nes_container-&gt;new('template.nhtml');<br>my $nes_tags = {};<br><br>$nes_tags-&gt;{'number'} = int rand 10;<br>$self-&gt;{'container'}-&gt;set_tags(%tags);<br>$self-&gt;{'container'}-&gt;interpret();<br>$self-&gt;{'container'}-&gt;out();<br><br>La clase Singleton la implementé entre otros para simplificar el uso de Nes.<br><br>* Estoy escribiendo estas cosas de cabeza y no me funciona muy bien, disculpar si hay erorres :-)<br><br></div><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;"><br><div style="font-family:
 arial,helvetica,sans-serif; font-size: 10pt;"><font size="2" face="Tahoma"><hr size="1"><b><span style="font-weight: bold;">De:</span></b> Salvador Fandiño &lt;sfandino@yahoo.com&gt;<br><b><span style="font-weight: bold;">Para:</span></b> Lista de correo de Madrid Perl Mongers &lt;madrid-pm@pm.org&gt;<br><b><span style="font-weight: bold;">Enviado:</span></b> vie,19 febrero, 2010 10:42<br><b><span style="font-weight: bold;">Asunto:</span></b> Re: [Madrid-pm] Curso acelerado de Nes<br></font><br><br>Skriptke wrote:<br>&gt; Lo primero que ha sido un placer conoceros, pero tengo una espinita clavada con Diego cuando me confeso&nbsp; que no supo hacer funcionar Nes, y yo que presumo de que es fácil de usar... :-)<br>&gt; <br>&gt; Que es Nes:<br>&gt; <br>&gt; Un sistema para la separación del código ejecutable Perl y la representación de los datos generados en HTML mediante Tags HTML que son reemplazados por variables creadas en Perl.<br>&gt; <br>&gt;
 De momento no es ninguna otra
 cosa.<br>&gt; <br>&gt; <a rel="nofollow" target="_blank" href="http://nes.sourceforge.net/miniblog/es/?item=Principios%20de%20Nes">http://nes.sourceforge.net/miniblog/es/?item=Principios%20de%20Nes</a><br>&gt; <br>&gt; Caso práctico:<br>&gt; <br>&gt; Página que muestra un número aleatorio.<br>&gt; <br>&gt; Creamos la plantilla :<br>&gt; <br>&gt; lucky.nhtml<br>&gt; {: NES 1.0 ('lucky.pl') :}<br>&gt; {: # la linea {: NES 1.0 ('lucky.pl') :} le dice a Nes<br>&gt;&nbsp; &nbsp; &nbsp; que cargue el el script lucky.pl para esta plantilla<br>&gt; :}<br>&gt; &lt;html&gt;<br>&gt;&nbsp;  &lt;head&gt;<br>&gt;&nbsp; &nbsp;  &lt;title&gt;Suerte&lt;/title&gt;<br>&gt;&nbsp;  &lt;/head&gt;<br>&gt;&nbsp;  &lt;body&gt;<br>&gt;&nbsp; &nbsp;  {:# {: $ number :} es la variable $nes_tags-&gt;{'number'} :}<br>&gt;&nbsp; &nbsp;  El número de la suerte es: &lt;b&gt;{: $ number :}&lt;/b&gt;<br>&gt;&nbsp;  &lt;/body&gt;<br>&gt; &lt;/html&gt;<br>&gt; <br>&gt; Creamos el
 script Perl:<br>&gt;
 <br>&gt; lucky.pl<br>&gt; use nes;<br>&gt; <br>&gt; # Único objeto a instanciar en Perl<br>&gt; my $nes = Singleton-&gt;new();<br>&gt; <br>&gt; # Las variables que Nes va a reemplazar en la plantilla<br>&gt; my $nes_tags = {};<br>&gt; $nes_tags-&gt;{'number'} = int rand 10;<br>&gt; <br>&gt; # Único método de&nbsp; Singleton, que envía los datos a reemplazar<br>&gt; $nes_tags-&gt;out(%$nes_tags)<br>&gt; <br>&gt; <br>&gt; Y ahora la gracia de Nes, lo convertimos en un objeto:<br>&gt; <br>&gt; lucky.nhtml<br>&gt; {: NES 1.0 ('lucky.pl') :}<br>&gt; {: $ number :}<br>&gt; <br>&gt; Y lo podemos insertar en cualquier página Web así:<br>&gt; <br>&gt; template.nhtml:<br>&gt; {: NES 1.0 script.pl :}<br>&gt; &lt;html&gt;<br>&gt;&nbsp;  &lt;head&gt;<br>&gt;&nbsp; &nbsp;  &lt;title&gt;Lo que sea&lt;/title&gt;<br>&gt;&nbsp;  &lt;/head&gt;<br>&gt;&nbsp;  &lt;body&gt;<br>&gt;&nbsp; &nbsp;  ...<br>&gt;&nbsp; &nbsp;  El número de la suerte es: &lt;b&gt;{: include
 lucky.nhtml :}&lt;/b&gt;<br>&gt;&nbsp; &nbsp;  ...<br>&gt;&nbsp;  &lt;/body&gt;<br>&gt; &lt;/html&gt;<br>&gt; <br>&gt; <a rel="nofollow" target="_blank" href="http://nes.sourceforge.net/miniblog/es/?item=Objetos">http://nes.sourceforge.net/miniblog/es/?item=Objetos</a><br>&gt; <br>&gt; En vez de mostrar un número, nuestro objeto podía mostrar un formulario, un script PHP, JavaScript, Ajax, etc. o una mezcla. El Tag “include” admite parámetros:<br>&gt; <br>&gt; <a rel="nofollow" target="_blank" href="http://nes.sourceforge.net/miniblog/es/?item=Tag%20include%20%28file%29">http://nes.sourceforge.net/miniblog/es/?item=Tag%20include%20%28file%29</a><br>&gt; <a rel="nofollow" target="_blank" href="http://nes.sourceforge.net/miniblog/es/?item=Paradigma%20Nes">http://nes.sourceforge.net/miniblog/es/?item=Paradigma%20Nes</a><br>&gt; <a rel="nofollow" target="_blank"
 href="http://nes.sourceforge.net/miniblog/es/?item=Incluir%20PHP%20y%20otros">http://nes.sourceforge.net/miniblog/es/?item=Incluir%20PHP%20y%20otros</a><br>&gt; <br>&gt; Prácticamente con esto, ya sabéis Nes, además de $ y de include hay 8 Tags más, se aprenden en un rato, y el único objeto que tendremos que instanciar en nuestro script Perl es uno de la clase Singleton y como sólo tiene un método (out) tampoco tiene perdida.<br>&gt; <br>&gt; <a rel="nofollow" target="_blank" href="http://nes.sourceforge.net/miniblog/es/?item=Sintaxis%20de%20Nes">http://nes.sourceforge.net/miniblog/es/?item=Sintaxis%20de%20Nes</a><br>&gt; <a rel="nofollow" target="_blank" href="http://nes.sourceforge.net/miniblog/es/?item=La%20clase%20Singleton">http://nes.sourceforge.net/miniblog/es/?item=La%20clase%20Singleton</a><br>&gt; <br><br>Un par de cuestiones de estilo:<br><br>1) Singleton es un muy mal nombre para un paquete. Llamale Nes o Nes::Stash<br><br>2) nes
 tampoco es un buen nombre, los nombre en minusculas estan reservados para pragmas (strict,
 autodie, etc). Usa Nes o NES<br><br>3) Si tu clase realmente es un singleton, no necesitas el new, directamente tendrias que poder hacer<br><br>&nbsp; Nes::Stash-&gt;set(%datos);<br><br>por ejemplo asi<br><br>&nbsp; package Nes::Stash;<br><br>&nbsp; my $singleton;<br><br>&nbsp; sub set {<br>&nbsp; &nbsp; my $self = shift;<br>&nbsp; &nbsp; ref $self or $self = ($singleton ||= __PACKAGE__-&gt;_new);<br>&nbsp; &nbsp; $self-&gt;...<br>&nbsp; }<br><br>... pero claro solo si es un singleton de verdad, que con la estructura que tienes no tengo muy claro que lo sea!<br><br>- Salva<br>_______________________________________________<br>Madrid-pm mailing list<br><a rel="nofollow" ymailto="mailto:Madrid-pm@pm.org" target="_blank" href="mailto:Madrid-pm@pm.org">Madrid-pm@pm.org</a><br><a rel="nofollow" target="_blank" href="http://mail.pm.org/mailman/listinfo/madrid-pm">http://mail.pm.org/mailman/listinfo/madrid-pm</a></div></div>
</div><br>



      </div></div>
</div><br>



      </body></html>