Benchmarking en distintos lenguajes [ Era algo así como cliente en jabber... ]

Horst H. von Brand vonbrand en inf.utfsm.cl
Mar Nov 27 18:00:08 CLST 2007


Alvaro Herrera <alvherre en alvh.no-ip.org> wrote:
> Rodrigo Fuentealba escribió:
> > El 16/11/07, Xavier Andrade <andrade en theory.polytechnique.fr> escribió:

[...]

> > Un método en OOP es una mera función,

> Solo si tu jerarquia de clases es de un solo nivel, que no es lo que se
> "estila".

Yep.

>           Un sistema un poquito mas complejo requiere que en tiempo de
> ejecucion se haga una busqueda del metodo invocado en una tabla de
> metodos,

Ai es.

>          y si no aparece entonces tienes que ir a la clase padre a ver
> si esta implementado ahi, y asi hasta llegar al tope de la jerarquia de
> clases.

Depende de como se implemente...

En C++ hay situaciones en que ni siquiera se hace referencia a una tabla de
metodos (el compilador puede saber en muchos casos cual es la funcion a
invocar), y cuando se usa la tabla de metodos casi siempre se puede ubicar
la funcion buscada con una unica referencia del estilo Objeto->tabla[i].f(),
independiente de la posicion en la jerarquia de herencia de las piezas
involucradas (los casos diferentes involucran herencia multiple y clases
base virtuales).  En lenguajes como Perl es necesario hacer la busqueda que
mencionas explicitamente durante la ejecucion, porque se puede cambiar
dinamicamente todo el encastrado (son simplemente estructuras de datos con
nombres convenidos).
-- 
Dr. Horst H. von Brand                   User #22616 counter.li.org
Departamento de Informatica                    Fono: +56 32 2654431
Universidad Tecnica Federico Santa Maria             +56 32 2654239
Casilla 110-V, Valparaiso, Chile               Fax:  +56 32 2797513


Más información sobre la lista de distribución Linux