<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Daniel Vinciguerra&#039;s Blog</title>
	<atom:link href="http://dvinciguerra.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://dvinciguerra.wordpress.com</link>
	<description>Talking about Perl, Computer Science and some other nerd things!</description>
	<lastBuildDate>Tue, 27 Dec 2011 23:57:22 +0000</lastBuildDate>
	<language>pt-br</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='dvinciguerra.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Daniel Vinciguerra&#039;s Blog</title>
		<link>http://dvinciguerra.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://dvinciguerra.wordpress.com/osd.xml" title="Daniel Vinciguerra&#039;s Blog" />
	<atom:link rel='hub' href='http://dvinciguerra.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Perl Moderno Usando MooseX::Declare Parte 1</title>
		<link>http://dvinciguerra.wordpress.com/2011/12/27/perl-moderno-usando-moosexdeclare-parte-1/</link>
		<comments>http://dvinciguerra.wordpress.com/2011/12/27/perl-moderno-usando-moosexdeclare-parte-1/#comments</comments>
		<pubDate>Tue, 27 Dec 2011 23:57:18 +0000</pubDate>
		<dc:creator>dvinciguerra</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dvinciguerra.wordpress.com/?p=87</guid>
		<description><![CDATA[INTRODUÇÃO Bom pessoal, pretendo com esta série de artigos mostrar como criar uma aplicação usando tecnicas modernas de desenvolvimento em Perl fazendo uso do modulo MooseX::Declare. Para isso resolvi que iria tramalhar com uma aplicação desktop e não com algo &#8230; <a href="http://dvinciguerra.wordpress.com/2011/12/27/perl-moderno-usando-moosexdeclare-parte-1/">Continue lendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=87&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h3>INTRODUÇÃO</h3>
<p>Bom pessoal, pretendo com esta série de artigos mostrar como criar uma aplicação usando tecnicas modernas de desenvolvimento em Perl fazendo uso do modulo MooseX::Declare.</p>
<p>Para isso resolvi que iria tramalhar com uma aplicação desktop e não com algo web. Usaremos para esta empreitada um modulo que nos permite criar telas de forma bem rápida e simples, o Tk (Toolkit).</p>
<p>Como não pretendo me prender a aspectos basicos da linguagem e tão pouco ao uso do módulo, imagino que o aspirante tenha conhecimentos em Perl (basicos~intermediarios) e que tenha uma boa base em desenvolvimento e estruturas de aplicações orientadas a objetos.</p>
<h3>COMEÇANDO DO COMEÇO</h3>
<p>Obviamente espero que voce tenha o MooseX::Declare instalado em sua maquina. Caso não o tenha, siga os simples passos a seguir:</p>
<p><code>$ sudo perl -MCPAN -e "install MooseX::Declare"</code></p>
<p>Importante lembrar que este modulo depende do Moose e sendo assim este será instalado para que o MooseX::Declare possa ser usado.</p>
<p>Agora vamos instalar o Tk:</p>
<p><code>$ sudo perl -MCPAN -e "install Tk"</code></p>
<p>Simples? Apos tudo instalado podemos começar.</p>
<h3>ESTRUTURA</h3>
<p>Abaixo vamos falar um pouco sobre a estrutura da aplicação. Pode não ser a melhor estrutura para fazermos uso mas é bem didática e isso garantirá um compreendimento por um maior numero de leitores.</p>
<p>    + &#8211; /calc<br />
      &#8211; calc.pl<br />
      + &#8211; /App<br />
        + /Form<br />
        &#8211; Base.pm<br />
        &#8211; Main.pm</p>
<h3>SOBRE A ESTRUTURA</h3>
<p>A aplicacao sera inicializada pela classe calc.pl que executará o nosso formulario principal (Main.pm), que por sua vez herdará habilidades comuns para as classes de formulários implementadas na classe Base.pm</p>
<h3>CHAMANDO O FORMULÁRIO PRINCIPAL</h3>
<p>Vamos criar nosso arquivo chamado calc.pl que fará a chamada do nosso formulário principal.</p>
<pre class="brush: perl;">

        #!/usr/bin/perl

        use strict;
        use warnings;

        use App::Form::Main;

        my $app =  App::Form::Main-&gt;new;
        $app-&gt;start;
</pre>
<p>=&gt; Explicando:</p>
<p>Neste arquivo nos criamos uma instancia da classe que representa nosso formulário (tela) principal e invocamos o metodo C que faz com que a tela seja apresentada ao usuário.</p>
<h3>A BASE DE TODOS OS FORMS</h3>
<p>Neste momento vamos criar uma classe que servirá de base para todos os outros FORMs. Esta classe terá metodos comuns que serão usados pelas telas do sistema.</p>
<pre class="brush: perl;">
        use MooseX::Declare;

        # start Tk base class
        class App::Form::Base {
            use Tk;

            # Tk class attribute
            has "window" =&gt; (
                is =&gt; 'rw',
                lazy =&gt; 1,
                default =&gt; sub {
                    return MainWindow-&gt;new;
                }
            );

            # method that config window widgets
            method init {
                die "Not implemented";
            }

            # method that start main window
            method start {
                $self-&gt;init;
                return MainLoop;
            }
        }
</pre>
<p>=&gt; Explicando:<br />
Nesta classe nos temos uma implementação generica que disponibiliza um atributo que retorna uma instancia de uma janela.</p>
<p>O metodo C será utilizado para configurar os widgets (botoes, caixas de texto, menus, etc), e o C &#8220;executará&#8221; a criacao da janela propriamente dita.</p>
<h3>CONSTRUINDO NOSSA TELA</h3>
<p>Neste momento construiremos a nossa tela propriamente dita.</p>
<pre class="brush: perl;">

        use MooseX::Declare;

        # start Tk main window class
        class App::Form::Main extends App::Form::Base {

            # class attributes
            has 'content'   =&gt; ( is =&gt; 'rw' );
            has 'display'   =&gt; ( is =&gt; 'rw' );
            has 'buttons01' =&gt; ( is =&gt; 'rw' );
            has 'buttons02' =&gt; ( is =&gt; 'rw' );
            has 'buttons03' =&gt; ( is =&gt; 'rw' );
            has 'buttons04' =&gt; ( is =&gt; 'rw' );
            has 'buttons05' =&gt; ( is =&gt; 'rw' );
            has 'buttons06' =&gt; ( is =&gt; 'rw' );
            has 'buttons07' =&gt; ( is =&gt; 'rw' );
            has 'buttons08' =&gt; ( is =&gt; 'rw' );
            has 'buttons09' =&gt; ( is =&gt; 'rw' );
            has 'buttons00' =&gt; ( is =&gt; 'rw' );
            has 'dot'       =&gt; ( is =&gt; 'rw' );
            has 'percent'   =&gt; ( is =&gt; 'rw' );

            has 'plus'      =&gt; ( is =&gt; 'rw' );
            has 'minus'     =&gt; ( is =&gt; 'rw' );
            has 'multiply'  =&gt; ( is =&gt; 'rw' );
            has 'divide'    =&gt; ( is =&gt; 'rw' );

            has 'c'         =&gt; ( is =&gt; 'rw' );
            has 'ce'        =&gt; ( is =&gt; 'rw' );
            has 'back'      =&gt; ( is =&gt; 'rw' );
            has 'equals'    =&gt; ( is =&gt; 'rw' );

            # method that start main window
            override init {
                my $menu = $self-&gt;window-&gt;Menu();

                # config main window
                $self-&gt;window-&gt;title('Modern Perl - Calculator');
                $self-&gt;window-&gt;configure(
                    -menu=&gt;$menu
                );

                # setting up menu
                my $help = $menu-&gt;Menubutton(-text=&gt;'Ajuda');
                $help-&gt;command(-label=&gt;'Sobre');

                # calculator content
                $self-&gt;content($self-&gt;window-&gt;Frame(
                    )-&gt;pack( -fill=&gt;'both', -expand=&gt;1, -ipadx=&gt;135, -ipady=&gt;145 )
                );

                # display screen
                $self-&gt;display($self-&gt;content-&gt;Entry(
                        -text=&gt;'',
                        -background=&gt;'white',
                    )-&gt;place(
                        -y=&gt;10,
                        -x=&gt;10,
                        -height=&gt;50,
                        -width=&gt;250,
                    )
                );

                # clear button
                $self-&gt;c($self-&gt;content-&gt;Button( -text=&gt;'C', -command=&gt; sub{ $self-&gt;clear_all }
                        )-&gt;place( -x=&gt;216, -y=&gt;75, -width=&gt;42, -height=&gt;42)
                );

                # ce button
                $self-&gt;ce($self-&gt;content-&gt;Button( -text=&gt;'CE', -command=&gt; sub{  }
                        )-&gt;place( -x=&gt;216, -y=&gt;127, -width=&gt;42, -height=&gt;42)
                );

                # back button
                $self-&gt;back($self-&gt;content-&gt;Button( -text=&gt;' sub{  }
                        )-&gt;place( -x=&gt;216, -y=&gt;179, -width=&gt;42, -height=&gt;42)
                );

                # equals button
                $self-&gt;equals($self-&gt;content-&gt;Button( -text=&gt;'=', -command=&gt; sub{  }
                        )-&gt;place( -x=&gt;216, -y=&gt;229, -width=&gt;42, -height=&gt;42)
                );

                # plus button
                $self-&gt;plus($self-&gt;content-&gt;Button( -text=&gt;'+', -command=&gt; sub{  }
                        )-&gt;place( -x=&gt;164, -y=&gt;229, -width=&gt;42, -height=&gt;42)
                );

                # plus button
                $self-&gt;plus($self-&gt;content-&gt;Button( -text=&gt;'+', -command=&gt; sub{  }
                        )-&gt;place( -x=&gt;164, -y=&gt;229, -width=&gt;42, -height=&gt;42)
                );

                # minus button
                $self-&gt;minus($self-&gt;content-&gt;Button( -text=&gt;'-', -command=&gt; sub{  }
                        )-&gt;place( -x=&gt;164, -y=&gt;177, -width=&gt;42, -height=&gt;42)
                );

                # multiply button
                $self-&gt;multiply($self-&gt;content-&gt;Button( -text=&gt;'x', -command=&gt; sub{  }
                        )-&gt;place( -x=&gt;164, -y=&gt;125, -width=&gt;42, -height=&gt;42)
                );

                # divide button
                $self-&gt;divide($self-&gt;content-&gt;Button( -text=&gt;'/', -command=&gt; sub{  }
                        )-&gt;place( -x=&gt;164, -y=&gt;75, -width=&gt;42, -height=&gt;42)
                );

                # percent button
                $self-&gt;percent($self-&gt;content-&gt;Button( -text=&gt;'%', -command=&gt; sub{  }
                        )-&gt;place( -x=&gt;112, -y=&gt;229, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;dot($self-&gt;content-&gt;Button( -text=&gt;'.', -command=&gt; sub{ $self-&gt;set_value( '.' ); }
                        )-&gt;place( -x=&gt;62, -y=&gt;229, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;buttons00($self-&gt;content-&gt;Button( -text=&gt;'0', -command=&gt; sub{ $self-&gt;set_value( 0 ); }
                        )-&gt;place( -x=&gt;10, -y=&gt;229, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;buttons01($self-&gt;content-&gt;Button( -text=&gt;'1', -command=&gt; sub{ $self-&gt;set_value( 1 ); }
                        )-&gt;place( -x=&gt;10, -y=&gt;177, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;buttons02($self-&gt;content-&gt;Button( -text=&gt;'2', -command=&gt; sub{ $self-&gt;set_value( 2 ); }
                        )-&gt;place( -x=&gt;62, -y=&gt;177, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;buttons03($self-&gt;content-&gt;Button( -text=&gt;'3', -command=&gt; sub{ $self-&gt;set_value( 3 ); }
                        )-&gt;place( -x=&gt;112, -y=&gt;177, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;buttons04($self-&gt;content-&gt;Button( -text=&gt;'4', -command=&gt; sub{ $self-&gt;set_value( 4 ); }
                        )-&gt;place( -x=&gt;10, -y=&gt;125, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;buttons05($self-&gt;content-&gt;Button( -text=&gt;'5', -command=&gt; sub{ $self-&gt;set_value( 5 ); }
                        )-&gt;place( -x=&gt;62, -y=&gt;125, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;buttons06($self-&gt;content-&gt;Button( -text=&gt;'6', -command=&gt; sub{ $self-&gt;set_value( 6 ); }
                        )-&gt;place( -x=&gt;112, -y=&gt;125, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;buttons07($self-&gt;content-&gt;Button( -text=&gt;'7', -command=&gt; sub{ $self-&gt;set_value( 7 ); }
                        )-&gt;place( -x=&gt;10, -y=&gt;75, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;buttons08($self-&gt;content-&gt;Button( -text=&gt;'8', -command=&gt; sub{ $self-&gt;set_value( 8 ); }
                        )-&gt;place( -x=&gt;62, -y=&gt;75, -width=&gt;42, -height=&gt;42)
                );

                $self-&gt;buttons09($self-&gt;content-&gt;Button( -text=&gt;'9', -command=&gt; sub{ $self-&gt;set_value( 9 ); }
                        )-&gt;place( -x=&gt;112, -y=&gt;75, -width=&gt;42, -height=&gt;42)
                );

            }

            # Action that set method to Entry display
            method set_value ( $value ){
                $self-&gt;display-&gt;insert('end', $value);

                # DEBUG: remove it
                print "$value - ". $self-&gt;display-&gt;get() ."\n";
            }

            # Action that clear last number
            method clear_last {
                # TODO: get all display value, split by operators and remove last number
            }

            # Action that clear all display value
            method clear_all {
                $self-&gt;display-&gt;delete('0', 'end');
            }

        }
</pre>
<p>=&gt; Explicando:<br />
Esta classe cria a nossa tela, que e a de uma calculadora simples onde implementaremos a nossa solução.</p>
<p>O desenvolvimento da tela não existe segredo, nos só declaramo as propriedades da classe (uma para cada widget), contruimos e configuramos os widgets conforme a nossa necessidade.</p>
<h3>CONCLUSÃO</h3>
<p>Com este exemplo simples, podemos ver o quanto foi simples e rápido escrever uma app usando o MooseX::Declare. No próximo artigo, pretendo abordar a implementação das rotinas de calculo deste exemplo.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dvinciguerra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dvinciguerra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dvinciguerra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dvinciguerra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dvinciguerra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dvinciguerra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dvinciguerra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dvinciguerra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dvinciguerra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dvinciguerra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dvinciguerra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dvinciguerra.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dvinciguerra.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dvinciguerra.wordpress.com/87/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=87&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dvinciguerra.wordpress.com/2011/12/27/perl-moderno-usando-moosexdeclare-parte-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1fb6cf1869fd18b454f379814da98d90?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dvinciguerra</media:title>
		</media:content>
	</item>
		<item>
		<title>Pensamentos Retrógrados Que Acabam Com Uma Empresa</title>
		<link>http://dvinciguerra.wordpress.com/2011/08/23/pensamentos-retrogrados-que-acabam-com-uma-empresa/</link>
		<comments>http://dvinciguerra.wordpress.com/2011/08/23/pensamentos-retrogrados-que-acabam-com-uma-empresa/#comments</comments>
		<pubDate>Tue, 23 Aug 2011 13:16:07 +0000</pubDate>
		<dc:creator>dvinciguerra</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Desenvolvimento]]></category>

		<guid isPermaLink="false">http://dvinciguerra.wordpress.com/?p=83</guid>
		<description><![CDATA[Pensamentos Retrógrados Que Acabam Com Uma Empresa 1 &#8211; &#8220;A TI da nossa empresa não é importante!&#8221; Realmente, se você pensa dessa forma a sua empresa vai ter sérios problemas num futuro próximo, quando você precisar fazer integrações entre sistema &#8230; <a href="http://dvinciguerra.wordpress.com/2011/08/23/pensamentos-retrogrados-que-acabam-com-uma-empresa/">Continue lendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=83&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Pensamentos Retrógrados Que Acabam Com Uma Empresa</p>
<p><em><strong>1 &#8211; &#8220;A TI da nossa empresa não é importante!&#8221;</strong></em></p>
<p>Realmente, se você pensa dessa forma a sua empresa vai ter sérios<br />
problemas num futuro próximo, quando você precisar fazer integrações<br />
entre sistema ou de um sistema parrudo para ajudar na tomada de<br />
decisões, automação de processo, etc&#8230;</p>
<p><em><strong>2 &#8211; &#8220;Não vamos gastar dinheiro com este sistema! Nós mesmos podemos construir&#8230;&#8221;</strong></em></p>
<p>Isso&#8230; assim vocês contratam Gerente de Projetos, Analistas, Arquitetos, Testadores e tudo mais que precise este pacote&#8230; Mas o melhor de tudo é você gastar tempo e dinheiro fazendo uma feramenta qua já existe e esta sendo largamente testada para dar mais segurança, estabilidade, etc&#8230;</p>
<p>Mas claro que você vai garantir tudo isso na sua aplicação, não é!?<br />
Que tal comprar ou customizar uma? Vai ser mais rápido e vai gastar<br />
menos dinheiro! <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><em><strong>3 &#8211; &#8220;Ahh eu clico aqui, copio ali colo e corto aqui e pronto, meu Excel faz a mesma coisa que esse sistema&#8230;&#8221;</strong></em></p>
<p>Claro que faz&#8230; e você vai versionar a planilha cheia de macros e VBAs e depois de alguns meses vai ter vários monstrinhos na sua empresa.<br />
Isso tudo sem contar a garantia de compatibilidade entre versões dos editores e tudo mais. Mas claro que você ja pensou nisso tudo!</p>
<p><em><strong>4 &#8211; &#8220;Para que fazer uma aplicação para isso? Faz direto no banco!&#8221;</strong></em></p>
<p>Hahahahaha essa é a pior!!!<br />
O banco vai garantir o versionamento e claro que podemos usar paradigmas de programação dos mais atuais, testes automatizados, UML e documentação.<br />
Faça um favor a você mesmo e diga pausadamente a palavra &#8220;BANCO DE DADOS&#8221;&#8230; Se não conseguir, tente novamente com um dicionário ao lado, você vai intender o verdadeiro uso desta solução. <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  </p>
<p><em><strong>5 &#8211; &#8220;Acesse o servidor XXY.ZZZ.W.YZZ e desenvolva aquela melhoria para liberarmos antes do almoço&#8230;&#8221;</strong></em></p>
<p>Faça isso mesmo e vai ganhar um doce! =B<br />
&#8230; e uma versão desatualizada de um sistema da próxima vez que publicar sua aplicação com aquela alteração que não estava no sistema de controle de versão! A propósito você usa ou sabe o que é um sistema de controle de versão?! Caso não, deveria pensar seriamente em usa-lo&#8230;. de forma CORRETA!</p>
<p>Bom acima temos um desabafo baseado em algumas da muitas situações lamentáveis a que já fui submetido e que eu realmente aconselho que as pessoas pensem muito bem antes de fazer!</p>
<p>Outras simplesmente são muito tristes e não teria forças para colocar aqui!</p>
<p>Trabalhar de forma correta, usando as soluções certas para resolver os problemas que estas se propõem é uma forma muito útil de garantir, economia de dinheiro, tempo e papel, pois você precisará ir menos no médico e consequentemente ele usará menos o bloco para lhe receitar remédios de pressão, enxaqueca e &#8220;anti-stress&#8221;!</p>
<p>Estes são meus centavos!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dvinciguerra.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dvinciguerra.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dvinciguerra.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dvinciguerra.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dvinciguerra.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dvinciguerra.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dvinciguerra.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dvinciguerra.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dvinciguerra.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dvinciguerra.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dvinciguerra.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dvinciguerra.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dvinciguerra.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dvinciguerra.wordpress.com/83/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=83&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dvinciguerra.wordpress.com/2011/08/23/pensamentos-retrogrados-que-acabam-com-uma-empresa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1fb6cf1869fd18b454f379814da98d90?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dvinciguerra</media:title>
		</media:content>
	</item>
		<item>
		<title>WebInject Improvements</title>
		<link>http://dvinciguerra.wordpress.com/2011/07/26/webinject-improvements/</link>
		<comments>http://dvinciguerra.wordpress.com/2011/07/26/webinject-improvements/#comments</comments>
		<pubDate>Tue, 26 Jul 2011 10:10:24 +0000</pubDate>
		<dc:creator>dvinciguerra</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dvinciguerra.wordpress.com/?p=77</guid>
		<description><![CDATA[A algum tempo tenho estudado trabalhar na criação de uns hacks no sistema WebInject para utilizar na empresa Bivee afim de simplificar a execução dos testes em aplicações web pelo time de testes. Entre algumas melhorias que serão desenvolvidas estão &#8230; <a href="http://dvinciguerra.wordpress.com/2011/07/26/webinject-improvements/">Continue lendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=77&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A algum tempo tenho estudado trabalhar na criação de uns hacks no sistema WebInject para utilizar na empresa Bivee afim de simplificar a execução dos testes em aplicações web pelo time de testes.</p>
<p>Entre algumas melhorias que serão desenvolvidas estão melhorias na interface, trabalho forte na documentação do projeto, modulo web e outros. Abaixo segue a lista estimada para a a primeira versão do projeto após o hackathon:</p>
<p>- Melhorias na interface gráfica do projeto<br />
- Melhorias nos manuais e documentações<br />
- Aplicação de Modern Perl Coding style <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
- Uso de banco de dados e logs<br />
- Módulo web para publicação e consulta<br />
- Versionamento dos casos de teste<br />
- Modo teste de regressão<br />
- Módulo de relatórios</p>
<p>Bom, esperamos que esta seja algumas das melhorias conseguidas logo após o primeiro hackathon para que possamos reportar os hack na ferramenta aos criadores originais fazendo assim crescer o uso a ferramenta e a força da comunidade também.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dvinciguerra.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dvinciguerra.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dvinciguerra.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dvinciguerra.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dvinciguerra.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dvinciguerra.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dvinciguerra.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dvinciguerra.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dvinciguerra.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dvinciguerra.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dvinciguerra.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dvinciguerra.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dvinciguerra.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dvinciguerra.wordpress.com/77/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=77&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dvinciguerra.wordpress.com/2011/07/26/webinject-improvements/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1fb6cf1869fd18b454f379814da98d90?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dvinciguerra</media:title>
		</media:content>
	</item>
		<item>
		<title>Verificação de erros simples em Perl</title>
		<link>http://dvinciguerra.wordpress.com/2011/07/16/verificacao-de-erros-simples-em-perl/</link>
		<comments>http://dvinciguerra.wordpress.com/2011/07/16/verificacao-de-erros-simples-em-perl/#comments</comments>
		<pubDate>Sat, 16 Jul 2011 14:50:02 +0000</pubDate>
		<dc:creator>dvinciguerra</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dvinciguerra.wordpress.com/?p=71</guid>
		<description><![CDATA[Sei que este tema ja foi largamente discutido na comunidade e que temos várias formas de fazer isso com módulo e tudo mais&#8230; mas a intenção deste post realmente não é dar uma bala de prata para a resolução do &#8230; <a href="http://dvinciguerra.wordpress.com/2011/07/16/verificacao-de-erros-simples-em-perl/">Continue lendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=71&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Sei que este tema ja foi largamente discutido na comunidade e que temos várias formas de fazer isso com módulo e tudo mais&#8230; mas a intenção deste post realmente não é dar uma bala de prata para a resolução do problema.</p>
<p>Vamos a explicação:</p>
<p>PROBLEMA: Temos um código que é propicio a &#8220;exceções&#8221; e gostaríamos de fazer uma tratativa para verificar quando estes códigos &#8220;morrem&#8221;.<br />
<pre class="brush: perl;">
package FileOp;

sub new {
    return bless {}, shift || ref shift;
}

sub open_file {
    my $self = shift;

    open my $file, shift or die $!;
    ...
    close $file;
}


package main;

my $file = FileOp-&gt;new;
my $foo = $file-&gt;open_file( './file.txt' ); # die &quot;arquivo não existe&quot;

</pre></p>
<p>PROPOSTA: Uso do eval {}</p>
<p><pre class="brush: perl;">

use Carp;

my $file = FileOp-&gt;new;
eval {
    my $foo = $file-&gt;open_file( './file.txt' ); # die &quot;arquivo não existe&quot;
    ...
};
if ( $@ ) {
    say &quot;O sistema foi encerrado porque: &quot;. $!;
}
</pre></p>
<p>Isso é uma solução simples e primária para o problema, porem no CPAN existem inúmeros módulos que tratam fluxo de erros, exceptions, etc..<br />
Abaixo eu sito alguns:</p>
<p>Carp &#8211; <a href="http://search.cpan.org/~jesse/perl-5.14.1/lib/Carp.pm">http://search.cpan.org/~jesse/perl-5.14.1/lib/Carp.pm</a><br />
Try::Tiny &#8211; <a href="http://search.cpan.org/~doy/Try-Tiny-0.09/lib/Try/Tiny.pm">http://search.cpan.org/~doy/Try-Tiny-0.09/lib/Try/Tiny.pm</a><br />
TryCatch &#8211; <a href="http://search.cpan.org/~ash/TryCatch-1.003000/lib/TryCatch.pm">http://search.cpan.org/~ash/TryCatch-1.003000/lib/TryCatch.pm</a><br />
Throwable &#8211; <a href="http://search.cpan.org/~rjbs/Throwable-0.102080/lib/Throwable.pm">http://search.cpan.org/~rjbs/Throwable-0.102080/lib/Throwable.pm</a><br />
&#8230; e muitos outros! ; )</p>
<p>Fica a dica, tratem os fluxos de erros do seu sistema, pois isso é tão [importante quanto|faz parte] o desenvolvimento das funcionalidades do seu sistema.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dvinciguerra.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dvinciguerra.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dvinciguerra.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dvinciguerra.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dvinciguerra.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dvinciguerra.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dvinciguerra.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dvinciguerra.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dvinciguerra.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dvinciguerra.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dvinciguerra.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dvinciguerra.wordpress.com/71/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dvinciguerra.wordpress.com/71/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dvinciguerra.wordpress.com/71/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=71&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dvinciguerra.wordpress.com/2011/07/16/verificacao-de-erros-simples-em-perl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1fb6cf1869fd18b454f379814da98d90?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dvinciguerra</media:title>
		</media:content>
	</item>
		<item>
		<title>MooseX::Declare um exemplo simples</title>
		<link>http://dvinciguerra.wordpress.com/2011/07/16/moosexdeclare-um-exemplo-simples/</link>
		<comments>http://dvinciguerra.wordpress.com/2011/07/16/moosexdeclare-um-exemplo-simples/#comments</comments>
		<pubDate>Sat, 16 Jul 2011 14:05:05 +0000</pubDate>
		<dc:creator>dvinciguerra</dc:creator>
				<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://dvinciguerra.wordpress.com/?p=49</guid>
		<description><![CDATA[Este post é bem rápido e tem com objetivo mostrar o funcionamento do modulo MooseX::Declare e o efeito dele na sintaxe do código. Apesar de ser um exemplo bem simples o intuito aqui não é esgotar o assunto mas sim &#8230; <a href="http://dvinciguerra.wordpress.com/2011/07/16/moosexdeclare-um-exemplo-simples/">Continue lendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=49&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Este post é bem rápido e tem com objetivo mostrar o funcionamento do modulo MooseX::Declare e o efeito dele na sintaxe do código. Apesar de ser um exemplo bem simples o intuito aqui não é esgotar o assunto mas sim prover uma certa curiosidade sobre o uso deste módulo.</p>
<p>Para saber mais noticias sobre este módulo veja o doc em <a href="http://search.cpan.org/~flora/MooseX-Declare-0.34/lib/MooseX/Declare.pm">http://search.cpan.org/~flora/MooseX-Declare-0.34/lib/MooseX/Declare.pm</a></p>
<p>Sem mais delongas, vamos ao exemplo e as notas sobre o mesmo:</p>
<p>&nbsp;</p>
<p>No exemplo acima, podemos perceber que a sintaxe na declaração da classe foi completamente &#8220;alterada&#8221;.</p>
<p>Na declaração da classe tivemos mudanças radicais&#8230;<br />
package People; =&gt; class People { &#8230; }</p>
<p>Se olharmos bem a declaração dos atributos da classe neste exemplo vamos perceber que não mudaram muito do modo como os declarávamos usando o Moose, mas este por outro lado revolucionou e simplificou e muito a forma tradicional de se criar classes, roles e declarar atributos.</p>
<p><pre class="brush: perl;">

use MooseX::Declare;

class People {

    # class attribute
    has 'name' =&amp;gt; ( isa =&amp;gt; 'Str', is =&amp;gt; 'rw' );

    # method declaration
    method meet_you() {
        say &quot;Prazer em conhecer você, &quot;. 
            $self-&amp;gt;name if defined $self-&amp;gt;name;
    }
}
</pre></p>
<p>Nos métodos também podemos ver uma mudança sutil, não vemos a linha abaixo da declaração do método as inscrições &#8220;my $self = shift;&#8221; que mesmo no Moose tradicionalmente usávamos para receber a referencia para a objeto instanciado. Esta inscrição agora implícita, simplifica ainda mais a forma com que vemos nossos métodos.</p>
<p>Como vimos no exemplo acima, em Perl nós temos mais de uma maneira de se fazer algo e isso vem ficando cada vez mais evidente. O modulo MooseX::Declare nos traz algumas features muito interessantes e que simplificam ainda mais a forma como lemos e escrevemos nosso código.</p>
<p>Então deem uma olhada no doc que contem melhores exemplos e explicações, faça seus testes e brinque um pouco com o módulo que é bem interessante. <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dvinciguerra.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dvinciguerra.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dvinciguerra.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dvinciguerra.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dvinciguerra.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dvinciguerra.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dvinciguerra.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dvinciguerra.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dvinciguerra.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dvinciguerra.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dvinciguerra.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dvinciguerra.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dvinciguerra.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dvinciguerra.wordpress.com/49/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=49&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dvinciguerra.wordpress.com/2011/07/16/moosexdeclare-um-exemplo-simples/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1fb6cf1869fd18b454f379814da98d90?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dvinciguerra</media:title>
		</media:content>
	</item>
		<item>
		<title>A melhor hospedagem grátis de sites que conheço</title>
		<link>http://dvinciguerra.wordpress.com/2011/06/11/a-melhor-hospedagem-gratis-de-sites-que-conheco/</link>
		<comments>http://dvinciguerra.wordpress.com/2011/06/11/a-melhor-hospedagem-gratis-de-sites-que-conheco/#comments</comments>
		<pubDate>Sat, 11 Jun 2011 15:31:46 +0000</pubDate>
		<dc:creator>dvinciguerra</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[grátis]]></category>
		<category><![CDATA[hospedagem]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://dvinciguerra.wordpress.com/?p=56</guid>
		<description><![CDATA[Bom, não sou de postar essas coisas mas tem muita gente que esta começando e gostaria de ter o gostinho de colocar um web site no ar, mas ainda sim tem receio de pagar uns $ 5 mangos para isso &#8230; <a href="http://dvinciguerra.wordpress.com/2011/06/11/a-melhor-hospedagem-gratis-de-sites-que-conheco/">Continue lendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=56&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Bom, não sou de postar essas coisas mas tem muita gente que esta começando e gostaria de ter o gostinho de colocar um web site no ar, mas ainda sim tem receio de pagar uns $ 5 mangos para isso rs.</p>
<p>Eu em meados de 2005 procurei um serviço de hospedagem grátis para me ajudar a publicar uns trabalhos de uns clientes para validação e para colocar uns projetos em teste online e conheci o Awardspece.com.</p>
<p>Uso o serviço até hoje e gosto da qualidade do serviço (mesmo que gratis), o pessoal mostra um comprometimento bacana no forum para tentar ajudar os usuários.</p>
<p>Com 250MB da espaço, uso de ftp, suporte a linguagens como Perl e PHP, banco de dados MySQL e não obriga uso de Ads, torna-se uma excelente opção para fazer pequenos trabalhos e para quem esta começando a desenvolver sistemas para web e gostaria de estars</p>
<p>Não estou ganhando nada para indicar mas achei que valeria a dica pra que possa interessa&#8230; <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Awardspace: www.awardspace.com</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dvinciguerra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dvinciguerra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dvinciguerra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dvinciguerra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dvinciguerra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dvinciguerra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dvinciguerra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dvinciguerra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dvinciguerra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dvinciguerra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dvinciguerra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dvinciguerra.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dvinciguerra.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dvinciguerra.wordpress.com/56/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=56&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dvinciguerra.wordpress.com/2011/06/11/a-melhor-hospedagem-gratis-de-sites-que-conheco/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1fb6cf1869fd18b454f379814da98d90?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dvinciguerra</media:title>
		</media:content>
	</item>
		<item>
		<title>Yet Another File Manager Project</title>
		<link>http://dvinciguerra.wordpress.com/2010/03/02/yet-another-file-manager-project/</link>
		<comments>http://dvinciguerra.wordpress.com/2010/03/02/yet-another-file-manager-project/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 14:04:46 +0000</pubDate>
		<dc:creator>dvinciguerra</dc:creator>
				<category><![CDATA[Perl]]></category>
		<category><![CDATA[Computação e Desenvolvimento]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[File Manager]]></category>
		<category><![CDATA[Tk]]></category>

		<guid isPermaLink="false">http://dvinciguerra.wordpress.com/2010/03/02/yet-another-file-manager-project/</guid>
		<description><![CDATA[Um dia estava em me trabalho e um amigo iniciou uma conversa sobre a distribuição linux que ambos gostamos muito de utilizar que é o Damn Small Linux. Então no contexto da conversa ele me dizia estar querendo facilitar o &#8230; <a href="http://dvinciguerra.wordpress.com/2010/03/02/yet-another-file-manager-project/">Continue lendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=32&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Um dia estava em me trabalho e um amigo iniciou uma conversa sobre a distribuição linux que ambos gostamos muito de utilizar que é o Damn Small Linux. Então no contexto da conversa ele me dizia estar querendo facilitar o acesso aos dados do sistema, instalando um FM (File Manager) melhor e mais intuitivo, já que o Gerenciador de Arquivos padrao (EmelFM) é pouco intuitivo apesar de eu gostar muito dele.</p>
<p>Pensando nisso e enquanto conversava com ele abri o meu VIM e começei a brincar com os códigos e o módulo Tk… e o resultado pode ser visto na screenshot abaixo!</p>
<p align="center"><a href="http://dvinciguerra.files.wordpress.com/2010/03/perlfilemanager.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="clip_image002" border="0" alt="clip_image002" src="http://dvinciguerra.files.wordpress.com/2010/03/clip_image0021.gif?w=260&#038;h=202" width="260" height="202" /></a></p>
<h6 align="center">Perl File Manager (using Tk module)   <br /></h6>
<p>Claro que não existe nem um callback mais complexo implementado (o horário de almoço tinha acabado e estava no Windows…) mas em fim, foi uma experiencia interessante para fins didáticos.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dvinciguerra.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dvinciguerra.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dvinciguerra.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dvinciguerra.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dvinciguerra.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dvinciguerra.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dvinciguerra.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dvinciguerra.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dvinciguerra.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dvinciguerra.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dvinciguerra.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dvinciguerra.wordpress.com/32/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dvinciguerra.wordpress.com/32/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dvinciguerra.wordpress.com/32/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=32&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dvinciguerra.wordpress.com/2010/03/02/yet-another-file-manager-project/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1fb6cf1869fd18b454f379814da98d90?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dvinciguerra</media:title>
		</media:content>

		<media:content url="http://dvinciguerra.files.wordpress.com/2010/03/clip_image0021.gif" medium="image">
			<media:title type="html">clip_image002</media:title>
		</media:content>
	</item>
		<item>
		<title>Perl Tk Development IDE</title>
		<link>http://dvinciguerra.wordpress.com/2009/08/18/perl-tk-development-ide/</link>
		<comments>http://dvinciguerra.wordpress.com/2009/08/18/perl-tk-development-ide/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 13:31:16 +0000</pubDate>
		<dc:creator>dvinciguerra</dc:creator>
				<category><![CDATA[Perl]]></category>
		<category><![CDATA[Projeto]]></category>
		<category><![CDATA[Computação e Desenvolvimento]]></category>
		<category><![CDATA[GUI]]></category>
		<category><![CDATA[IDE]]></category>

		<guid isPermaLink="false">http://dvinciguerra.wordpress.com/2009/08/18/perl-tk-development-ide/</guid>
		<description><![CDATA[Este é um projeto que visa desenvolver uma plataforma simples de desenvolvimento gráfico baseando-se na interface gráfica Tk (ToolKit). Perl Tk Development IDE O layout do IDE foi inspirado no Glade para que ficasse mais simples a adaptação e uso &#8230; <a href="http://dvinciguerra.wordpress.com/2009/08/18/perl-tk-development-ide/">Continue lendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=18&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Este é um projeto que visa desenvolver uma plataforma simples de desenvolvimento gráfico baseando-se na interface gráfica <a href="http://wiki.tcl.tk/487">Tk (ToolKit)</a>.</p>
<p><a href="http://dvinciguerra.files.wordpress.com/2009/08/perl_tk_dev1.png"><img style="display:inline;float:none;border:0;" title="Perl Tk Development IDE Screenshot" src="http://dvinciguerra.files.wordpress.com/2009/08/perl_tk_dev_thumb1.png?w=260&#038;h=207" border="0" alt="Perl Tk Development IDE Screenshot" width="260" height="207" /></a><strong></strong></p>
<p><strong><span style="color:#484848;">Perl Tk Development IDE</span></strong></p>
<p>O layout do IDE foi inspirado no <a href="http://glade.gnome.org/">Glade</a> para que ficasse mais simples a adaptação e uso por desenvolvedores acostumados com o mesmo.</p>
<p>O sistema ainda esta em fase de desenvolvimento mas promete ser uma excelente alternativa já que as IDEs para desenvolvimento gráfico em Perl/Tk são tão pouco intuitivas e o desenvolvimento das telas lento e maçante.</p>
<p>Forte abraço a todos.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dvinciguerra.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dvinciguerra.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dvinciguerra.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dvinciguerra.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dvinciguerra.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dvinciguerra.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dvinciguerra.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dvinciguerra.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dvinciguerra.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dvinciguerra.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dvinciguerra.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dvinciguerra.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dvinciguerra.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dvinciguerra.wordpress.com/18/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=18&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dvinciguerra.wordpress.com/2009/08/18/perl-tk-development-ide/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1fb6cf1869fd18b454f379814da98d90?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dvinciguerra</media:title>
		</media:content>

		<media:content url="http://dvinciguerra.files.wordpress.com/2009/08/perl_tk_dev_thumb1.png" medium="image">
			<media:title type="html">Perl Tk Development IDE Screenshot</media:title>
		</media:content>
	</item>
		<item>
		<title>Damn Small Linux Brasil</title>
		<link>http://dvinciguerra.wordpress.com/2009/04/24/damn-small-linux-brasil/</link>
		<comments>http://dvinciguerra.wordpress.com/2009/04/24/damn-small-linux-brasil/#comments</comments>
		<pubDate>Fri, 24 Apr 2009 20:34:33 +0000</pubDate>
		<dc:creator>dvinciguerra</dc:creator>
				<category><![CDATA[Projeto]]></category>
		<category><![CDATA[Computação e Desenvolvimento]]></category>

		<guid isPermaLink="false">http://dvinciguerra.wordpress.com/2009/04/24/perl-surfaces-minimalist-and-very-simple-web-framework/</guid>
		<description><![CDATA[Projeto de desenvolvimento de ferramentas afim de facilitar a vida do usuário deste excelente sistema linux minimalista de apenas 50MB. O projeto Damn Small Linux Brasil visa desenvolver as ferramentas para este sistema de forma que as mesma façam uso &#8230; <a href="http://dvinciguerra.wordpress.com/2009/04/24/damn-small-linux-brasil/">Continue lendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=12&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Projeto de desenvolvimento de ferramentas afim de facilitar a vida do usuário deste excelente sistema linux minimalista de apenas 50MB.</p>
<p>O projeto Damn Small Linux Brasil visa desenvolver as ferramentas para este sistema de forma que as mesma façam uso mínimo da memória seguindo assim a filosofia da distribuição porem sem perder a beleza e provendo facilidades na administração e configuração do sistema ao usuário.</p>
<p> </p>
<p align="center"><a href="http://dvinciguerra.files.wordpress.com/2009/08/myscreen.jpg"><img style="display:block;float:none;margin-left:auto;margin-right:auto;border-width:0;" title="myscreen" src="http://dvinciguerra.files.wordpress.com/2009/08/myscreen_thumb.jpg?w=260&#038;h=200" border="0" alt="myscreen" width="260" height="200" /></a><strong> Imagem de ferramentas desenvolvidas<br />
(DSL Panel e MyDSL Browser)</strong></p>
<p> </p>
<p>O projeto esta em fase de desenvolvimento e levantamento dos requisitos e arquitetura e a implementação será feita em C++ utilizando o Tool Kit gráfico FLTK que alem de ser muito bem acabado e pequeno é muito poderoso e fornece uma infinidade de widgets uteis ao propósito do projeto.</p>
<p> </p>
<p><span style="color:#800000;">“Aos desenvolvedores que estiverem e/ou puderem ajudar no projeto serão sempre muito bem vindos.”</span></p>
<p> </p>
<p>Alguns links referentes ao projeto:</p>
<table style="border-right:#999999 1px solid;border-top:#999999 1px solid;border-left:#999999 1px solid;border-bottom:#999999 1px solid;" border="0" cellspacing="2" cellpadding="0" width="497">
<tbody>
<tr bgcolor="#cccccc">
<td width="151" valign="top">Nome</td>
<td width="338" valign="top">Endereço (url)</td>
</tr>
<tr bgcolor="#ffffff">
<td width="151" valign="top">Site Official do Projeto</td>
<td width="338" valign="top"><a href="http://www.damnsmalllinux.org">http://www.damnsmalllinux.org</a></td>
</tr>
<tr bgcolor="#eaeaea">
<td width="151" valign="top">Google Group Brasileiro</td>
<td width="338" valign="top"><a title="http://groups.google.com.br/group/damn-small-linux-brasil" href="http://groups.google.com.br/group/damn-small-linux-brasil">http://groups.google.com.br/group/damn-small-linux-brasil</a><a title="Damn Small Linux Brasil" href="http://groups.google.com.br/group/damn-small-linux-brasil"></a></td>
</tr>
<tr>
<td width="151" valign="top">Google Code</td>
<td width="338" valign="top"><a title="http://code.google.com/p/dsl-brasil/" href="http://code.google.com/p/dsl-brasil/">http://code.google.com/p/dsl-brasil/</a></td>
</tr>
</tbody>
</table>
<p> </p>
<p>Qualquer duvida sobre o projeto deixo-me a disposição para responder.</p>
<p><a href="mailto:daniel-vinciguerra@hotmail.com" target="_blank">Daniel Vinciguerra</a></p>
<p>Forte abraço a todos,</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dvinciguerra.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dvinciguerra.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dvinciguerra.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dvinciguerra.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dvinciguerra.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dvinciguerra.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dvinciguerra.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dvinciguerra.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dvinciguerra.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dvinciguerra.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dvinciguerra.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dvinciguerra.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dvinciguerra.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dvinciguerra.wordpress.com/12/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=12&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dvinciguerra.wordpress.com/2009/04/24/damn-small-linux-brasil/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1fb6cf1869fd18b454f379814da98d90?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dvinciguerra</media:title>
		</media:content>

		<media:content url="http://dvinciguerra.files.wordpress.com/2009/08/myscreen_thumb.jpg" medium="image">
			<media:title type="html">myscreen</media:title>
		</media:content>
	</item>
		<item>
		<title>Hello World Orientado a Objetos</title>
		<link>http://dvinciguerra.wordpress.com/2009/02/06/hello-world-orientado-a-objetos/</link>
		<comments>http://dvinciguerra.wordpress.com/2009/02/06/hello-world-orientado-a-objetos/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 20:11:13 +0000</pubDate>
		<dc:creator>dvinciguerra</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Computação e Desenvolvimento]]></category>

		<guid isPermaLink="false">http://dvinciguerra.wordpress.com/?p=8</guid>
		<description><![CDATA[Vi um post em um blog uma vez e achei muito interessante&#8230; se tratava de Hello Worlds em linguagens orientadas a objetos que o autor do post conhecia e decidi fazer uma brincadeira dessas por aqui também&#8230; Primeiro em Perl: &#8230; <a href="http://dvinciguerra.wordpress.com/2009/02/06/hello-world-orientado-a-objetos/">Continue lendo <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=8&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin:0;"><span style="font-family:Times New Roman;font-size:small;">Vi um post em um blog uma vez e achei muito interessante&#8230; se tratava de Hello Worlds em linguagens orientadas a objetos que o autor do post conhecia e decidi fazer uma brincadeira dessas por aqui também&#8230;</span></p>
<p>Primeiro em Perl:</p>
<div>
<div style="border:solid 1px #CCCCCC;padding:10px;"><span style="color:#008080;"> 1</span> <span style="color:#0000ff;">package</span><span style="color:#000000;"> HelloWorld;<br />
</span><span style="color:#008080;"> 2</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;"> 3</span> <span style="color:#000000;"> </span><span style="color:#0000ff;">use</span><span style="color:#000000;"> Moose;<br />
</span><span style="color:#008080;"> 4</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;"> 5</span> <span style="color:#000000;">has mensagem </span><span style="color:#000000;">=&gt;</span><span style="color:#000000;"> ( is </span><span style="color:#000000;">=&gt;</span><span style="color:#000000;"> </span><span style="color:#000000;font-weight:bold;">&#8216;</span><span style="color:#000000;font-weight:bold;">rw</span><span style="color:#000000;font-weight:bold;">&#8216;</span><span style="color:#000000;">,</span><span style="color:#000000;"> isa </span><span style="color:#000000;">=&gt;</span><span style="color:#000000;"> </span><span style="color:#000000;font-weight:bold;">&#8216;</span><span style="color:#000000;font-weight:bold;">Str</span><span style="color:#000000;font-weight:bold;">&#8216;</span><span style="color:#000000;"> );<br />
</span><span style="color:#008080;"> 6</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;"> 7</span> <span style="color:#000000;"> </span><span style="color:#0000ff;">sub</span><span style="color:#000000;"> show {<br />
</span><span style="color:#008080;"> 8</span> <span style="color:#0000ff;">my</span><span style="color:#000000;"> </span><span style="color:#800080;">$selft</span><span style="color:#000000;"> </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">shift</span><span style="color:#000000;">;<br />
</span><span style="color:#008080;"> 9</span> <span style="color:#0000ff;">print</span><span style="color:#000000;"> </span><span style="color:#800080;">$selft</span><span style="color:#000000;">-&gt;</span><span style="color:#000000;">mensagem(</span><span style="color:#800080;">$_</span><span style="color:#000000;">[</span><span style="color:#800000;">0</span><span style="color:#000000;">]);<br />
</span><span style="color:#008080;">10</span> <span style="color:#000000;">}<br />
</span><span style="color:#008080;">11</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;">12</span> <span style="color:#0000ff;">my</span><span style="color:#000000;"> </span><span style="color:#800080;">$hello</span><span style="color:#000000;"> </span><span style="color:#000000;">=</span><span style="color:#000000;"> HelloWorld</span><span style="color:#000000;">-&gt;</span><span style="color:#000000;">new;<br />
</span><span style="color:#008080;">13</span> <span style="color:#800080;">$hello</span><span style="color:#000000;">-&gt;</span><span style="color:#000000;">show(</span><span style="color:#000000;font-weight:bold;">&#8220;</span><span style="color:#000000;font-weight:bold;">Hello World</span><span style="color:#000000;font-weight:bold;">&#8220;</span><span style="color:#000000;">);</span></div>
</div>
<p>
Agora em Java:</p>
<div style="border:solid 1px #CCCCCC;padding:10px;"><span style="color:#008080;"> 1</span> <span style="color:#0000ff;">public</span><span style="color:#000000;"> </span><span style="color:#0000ff;">class</span><span style="color:#000000;"> HelloWorld {<br />
</span><span style="color:#008080;"> 2</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;"> 3</span> <span style="color:#0000ff;">private</span><span style="color:#000000;"> String mensagem;<br />
</span><span style="color:#008080;"> 4</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;"> 5</span> <span style="color:#0000ff;">public</span><span style="color:#000000;"> HelloWorld(String mensagem) {<br />
</span><span style="color:#008080;"> 6</span> <span style="color:#0000ff;">this</span><span style="color:#000000;">.mensagem </span><span style="color:#000000;">=</span><span style="color:#000000;"> mensagem;<br />
</span><span style="color:#008080;"> 7</span> <span style="color:#000000;">}<br />
</span><span style="color:#008080;"> 8</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;"> 9</span> <span style="color:#0000ff;">public</span><span style="color:#000000;"> </span><span style="color:#0000ff;">void</span><span style="color:#000000;"> show() {<br />
</span><span style="color:#008080;">10</span> <span style="color:#000000;">System.out.println(</span><span style="color:#0000ff;">this</span><span style="color:#000000;">.mensagem);<br />
</span><span style="color:#008080;">11</span> <span style="color:#000000;">}<br />
</span><span style="color:#008080;">12</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;">13</span> <span style="color:#0000ff;">public</span><span style="color:#000000;"> </span><span style="color:#0000ff;">static</span><span style="color:#000000;"> </span><span style="color:#0000ff;">void</span><span style="color:#000000;"> main(String[] args) {<br />
</span><span style="color:#008080;">14</span> <span style="color:#000000;">HelloWorld hello </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000ff;">new</span><span style="color:#000000;"> HelloWorld(</span><span style="color:#000000;">&#8220;</span><span style="color:#000000;">Ola Mundo!!!</span><span style="color:#000000;">&#8220;</span><span style="color:#000000;">);<br />
</span><span style="color:#008080;">15</span> <span style="color:#000000;">hello.show();<br />
</span><span style="color:#008080;">16</span> <span style="color:#000000;">}<br />
</span><span style="color:#008080;">17</span> <span style="color:#000000;">}</span></div>
<p>
Em C# também:</p>
<div style="border:solid 1px #CCCCCC;padding:10px;"><span style="color:#008080;"> 1</span> <span style="color:#0000FF;">using</span><span style="color:#000000;"> System;<br />
</span><span style="color:#008080;"> 2</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;"> 3</span> <span style="color:#000000;"></span><span style="color:#0000FF;">namespace</span><span style="color:#000000;"> HelloWorld<br />
</span><span style="color:#008080;"> 4</span> <span style="color:#000000;">{<br />
</span><span style="color:#008080;"> 5</span> <span style="color:#000000;">    </span><span style="color:#0000FF;">public</span><span style="color:#000000;"> </span><span style="color:#0000FF;">class</span><span style="color:#000000;"> HelloWorld<br />
</span><span style="color:#008080;"> 6</span> <span style="color:#000000;">    {<br />
</span><span style="color:#008080;"> 7</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;"> 8</span> <span style="color:#000000;">        </span><span style="color:#0000FF;">private</span><span style="color:#000000;"> </span><span style="color:#0000FF;">string</span><span style="color:#000000;"> _mensagem;<br />
</span><span style="color:#008080;"> 9</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;">10</span> <span style="color:#000000;">        </span><span style="color:#0000FF;">public</span><span style="color:#000000;"> HelloWorld(</span><span style="color:#0000FF;">string</span><span style="color:#000000;"> mensagem)<br />
</span><span style="color:#008080;">11</span> <span style="color:#000000;">        {<br />
</span><span style="color:#008080;">12</span> <span style="color:#000000;">            _mensagem </span><span style="color:#000000;">=</span><span style="color:#000000;"> mensagem;<br />
</span><span style="color:#008080;">13</span> <span style="color:#000000;">        }<br />
</span><span style="color:#008080;">14</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;">15</span> <span style="color:#000000;">        </span><span style="color:#0000FF;">public</span><span style="color:#000000;"> </span><span style="color:#0000FF;">void</span><span style="color:#000000;"> Show()<br />
</span><span style="color:#008080;">16</span> <span style="color:#000000;">        {<br />
</span><span style="color:#008080;">17</span> <span style="color:#000000;">            Console.WriteLine(_mensagem);<br />
</span><span style="color:#008080;">18</span> <span style="color:#000000;">        }<br />
</span><span style="color:#008080;">19</span> <span style="color:#000000;"><br />
</span><span style="color:#008080;">20</span> <span style="color:#000000;">        </span><span style="color:#0000FF;">public</span><span style="color:#000000;"> </span><span style="color:#0000FF;">static</span><span style="color:#000000;"> </span><span style="color:#0000FF;">void</span><span style="color:#000000;"> Main(</span><span style="color:#0000FF;">string</span><span style="color:#000000;">[] args)<br />
</span><span style="color:#008080;">21</span> <span style="color:#000000;">        {<br />
</span><span style="color:#008080;">22</span> <span style="color:#000000;">            HelloWorld hello </span><span style="color:#000000;">=</span><span style="color:#000000;"> </span><span style="color:#0000FF;">new</span><span style="color:#000000;"> HelloWorld(</span><span style="color:#800000;">&quot;</span><span style="color:#800000;">Ola Mundo!!!</span><span style="color:#800000;">&quot;</span><span style="color:#000000;">);<br />
</span><span style="color:#008080;">23</span> <span style="color:#000000;">            hello.Show();<br />
</span><span style="color:#008080;">24</span> <span style="color:#000000;">        }<br />
</span><span style="color:#008080;">25</span> <span style="color:#000000;">    }<br />
</span><span style="color:#008080;">26</span> <span style="color:#000000;">}</span></div>
<p>Continuarei a postar sobre as outras linguagens assim que tiver um tempinho a mais&#8230; <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Forte abraço a todos,</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/dvinciguerra.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/dvinciguerra.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/dvinciguerra.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/dvinciguerra.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/dvinciguerra.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/dvinciguerra.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/dvinciguerra.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/dvinciguerra.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/dvinciguerra.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/dvinciguerra.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/dvinciguerra.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/dvinciguerra.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/dvinciguerra.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/dvinciguerra.wordpress.com/8/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=dvinciguerra.wordpress.com&amp;blog=5417220&amp;post=8&amp;subd=dvinciguerra&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://dvinciguerra.wordpress.com/2009/02/06/hello-world-orientado-a-objetos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1fb6cf1869fd18b454f379814da98d90?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dvinciguerra</media:title>
		</media:content>
	</item>
	</channel>
</rss>
