[SP-pm] Curso Moose OOP

Thiago Glauco thiagoglauco at ticursos.net
Tue Aug 14 10:21:41 PDT 2012


Eden, obrigado pela dica. Vou providenciar a correção.


Em Ter, 2012-08-14 às 12:47 -0300, Eden Cardim escreveu:
> >>>>> "thiagoglauco" == thiagoglauco  <thiagoglauco em ticursos.net> writes:
> 
>     thiagoglauco> Sages, estou a berto às críticas construtivas, sugestões e
>     thiagoglauco> interessados em fazer a revisão dos textos e video-aulas...
> 
> Boa Glauco!
> 
>     thiagoglauco> http://joomla.ticursos.net/index.php/free-beer.html
> 
> Só uma observação sobre esse trecho de código:
> 
>   package Pessoa;
> 
>   use Moose;
> 
>   has 'nome' => (
>       is  => 'rw', #read/write
>       isa => 'Str',
>       reader => 'get_nome',
>       writer => 'set_nome',
>   );
> 
>   has 'idade' => (
>       is  => 'rw', #read/write
>       isa => 'Int',
>       reader => 'get_idade',
>       writer => 'set_idade',
>   );
> 
> A construção
> 
>   is => 'rw'
> 
> é um "atalho" para:
> 
>   accessor => 'nome'
> 
> que é um (quase) um atalho para:
> 
>   reader => 'nome',
>   writer => 'nome'
> 
> Então apesar de não ser propriamente "errado", não é recomendável. Use
> uma das três abordagens:
> 
>   has nome => (
>     is => 'rw',
>     isa => 'Str'
>   );
> 
> ou
> 
>   has nome => (
>     reader => 'get_nome',
>     writer => 'set_nome',
>     isa => 'Str'
>   );
> 
> ou
> 
>   has nome => (
>     accessor => 'nome',
>     isa => 'Str'
>   )
> 
> Eu particularmente prefiro ilustrar com a primeira construção, por ser
> mais conciso. O cookbook tem exemplos que ajudam a ilustrar bem as
> vantagens do Moose:
> https://metacpan.org/module/Moose::Cookbook::Basics::Point_AttributesAndSubclassing
> 
> Uma outra coisa que você pode apresentar, e que as pessoas tem
> demonstrado um aumento significativo de interesse é o http://joose.it/,
> um "loose port" de moose pra javascript.
> 




More information about the SaoPaulo-pm mailing list