[Cascavel-pm] O código mais bizonho que eu já fiz na minha vida (v. 2.0)

Daniel Ruoso daniel em ruoso.com
Quarta Junho 16 15:15:56 CDT 2004


Em Qua, 2004-06-16 às 16:08, Luis Campos de Carvalho escreveu:
>    Aí, que parece interessante, mas eu não consigo ver muita utilidade 
> em usar métodos definidos dinamicamente... isso é lento, custa "caro" em 
> termos de processamento e não pode ser portado para linguagens de baixo 
> nível. (como C, por exemplo).
>    Qual a diferença entre isto e projetar melhor, enchendo o @ISA com as 
> classes certas para resolver seu problema?
>    Curioso, interessado, curtindo a reflexão mas achando tudo muito 
> exótico...

Simples,

Vamos imaginar que você está fazendo uma aplicação web com componentes
(tipo o Oak, ou o Oak2), e você precisa personalizar o comportamento da
superclasse dos componentes visuais para, por exemplo, só exibir se o
usuário tiver uma permissão específica.

A primeira resposta seria: vamos colocar essa implementação no
Oak2::Web::Visual (superclasse dos componentes visuais da web), mas daí
você percebe que isso só faz sentido na sua aplicação e não na árvore do
Oak mesmo...

A segunda resposta seria: vamos fazer um fork para essa nova
funcionalidade, mas daí você percebe que isso daria muito trabalho...

Enfim você se desespera e tem que sair duplicando código em vários
lugares...

ou...

você define uma personalização para aquela classe naquela aplicação e
tudo fica lindo e maravilhoso...




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