[Cascavel-pm] Transformando em objeto

Adriano Ferreira a.r.ferreira em gmail.com
Quinta Novembro 30 08:52:31 PST 2006


On 11/30/06, Lorn <lorn.br em gmail.com> wrote:
> Foi o que eu pensei, eu tenho a mente meio perturbada com OO por causa do
> Java, no Perl é muito melhor, vou seguir a sua dica, e a do Randal em
> aprender Smalltalk só pra aprender/entender melhor os conceitos de
> orientação a objeto.
> Obrigado pelo esclarecimento Adriano.

Eu não sugeriria a você aprender Smalltalk, e acho que nem o Randal. O
artigo do Randal e minha citação a ele foram uma provocação para
aqueles que dizem saber demais de objetos e nunca trabalharam com uma
linguagem que tem objeto de baixo em cima e remodela de fato o jeito
de programar. Esclarecendo, eu não aconselharia você a aprender
Smalltalk se o seu propósito é tornar-se um programador melhor
conhecendo mais de programação a objeto. Smalltalk é uma das
naves-mães com respeito a muitos aspectos: orientação a objeto, MVC, e
interfaces gráficas, entre outras. Mas Smalltalk é estranho (a sintaxe
é super simples mas esquisita - 1 + 2 * 3 => 6 ! e comandos de
controle como if, while são métodos sobre booleanos e
blocos/closures), mas o caso mesmo é que a linguagem traz junto uma
bagagem com respeito ao ambiente integrado de desenvolvimento e outras
excentricidades que não vão lhe servir muito com respeito a outras
linguagens. No entanto, se a sua intenção é conhecer por ser curioso e
para completar sua formação, Smalltalk é essencial nesta aprendizagem.

Você pode olhar para Ruby que tomou emprestado muitas idéias do
Smalltalk e do Perl (é claro!).

       Ruby = (Smalltalk + Perl)/2

(e tem mais umas dezenas de boas linguagens com um poderoso suporte a
OO, como Python e linguagens funcionais como Haskell.)

Ou melhor ainda você pode olhar para Perl, mas entrando pelas avenidas
corretas, como:

* o livro do Damian, Object-Oriented Perl
* o módulo Moose

e finalmente Perl 6 que promete ser a linguagem das linguagens.
Programação orientada a objetos em Perl 6 deve revolucionar o mundo:
roles, delegation, e mais uma porção de coisas.

É óbvio que em Perl, você não precisa ser purista em OO e nem é
desejável o ser todo o tempo.


Mais detalhes sobre a lista de discussão Cascavel-pm