Categoria: Perl


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.

Para saber mais noticias sobre este módulo veja o doc em http://search.cpan.org/~flora/MooseX-Declare-0.34/lib/MooseX/Declare.pm

Sem mais delongas, vamos ao exemplo e as notas sobre o mesmo:

 

No exemplo acima, podemos perceber que a sintaxe na declaração da classe foi completamente “alterada”.

Na declaração da classe tivemos mudanças radicais…
package People; => class People { … }

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.


use MooseX::Declare;

class People {

    # class attribute
    has 'name' => ( isa => 'Str', is => 'rw' );

    # method declaration
    method meet_you() {
        say "Prazer em conhecer você, ". 
            $self->name if defined $self->name;
    }
}

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 “my $self = shift;” 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.

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.

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. ;)

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.

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!

clip_image002

Perl File Manager (using Tk module)

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.

Perl Tk Development IDE

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 Screenshot

Perl Tk Development IDE

O layout do IDE foi inspirado no Glade para que ficasse mais simples a adaptação e uso por desenvolvedores acostumados com o mesmo.

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.

Forte abraço a todos.

Blog no WordPress.com. | Tema: Motion até volcanic.
Seguir

Obtenha todo post novo entregue na sua caixa de entrada.