Cesar, Sixto, Xavi, me alegra haber provocado esta discusión tan fructífera
para los que nos enteramos poco o nada de OOP (en AS2 o en lo que sea, que
algo tengo claro ya, el lenguaje es lo de menos, el análisis es lo
importante).

Resumo unos cuantos conceptos para aclarar mis ideas y para que me corrijáis
si me equivoco y tenéis tiempo y humor:

- Relación HAS-A de composición:
Un miembro de La Clase instancia otra clase (el dichoso owner, que
contendría la instancia de la otra clase). Creo que a esto os referís como
encapsular una clase en otra, pero no lo tengo claro: Yo por encapsular
entendía hacer que un objeto sea funcional en sí mismo, sin dependencias.
Sixto habla de "agregación", y dice que puede ser uni o bidireccional, y que
esta última forma implica que un miembro de la clase agregada apunte a la
clase que la agrega, lo cual, creo, rompería la encapsulación tal y como yo
la entendía (o sea, seguramente mal).

De todo esto deduzco que:
Si La Clase tiene un miembro que apunta a otra clase, pero esta segunda
clase no apunta a La Clase, la agregación es unidireccional. (La Clase usa o
puede usar otra clase para lo que le interese)
Si La Clase tiene un miembro que apunta a otra clase, y esta segunda clase
tiene un miembro que apunta a La Clase, la agregación es bidireccional.
(Ambas clases están vinculadas la una a la otra, esto no lo entiendo, o no
le veo la utilidad, bueno, la utilidad sí, pero creo que rompe el paradigma
OOP).

Por aquí entremedio salen los Listeners, que se supone son el mecanismo de
intercambio de información entre objetos (Cuando yo cambio, te aviso si te
has registrado a mis cambios). Y ya me pierdo totalmente. Si se supone que
son el mecanismo de interrelación ¿qué sentido tiene la agragación
bidireccional (otra vez), si sin referenciarse pueden comunicarse?

- Relación IS-A de herencia
La Clase extiende otra clase para añadirle funcionalidad. Que sencillito
suena esto ahora 8-).

Otra cosa que me ha quedado clara es que cada proyecto requerirá de una,
otra o ambas metodologías (porque esto son metodologías, ¿no?: modos de
actuación frente a un problema concreto). Así que no os peguéis 8-)

Cada día más confuso, espero que santo Moock me ilumine pronto.

Paulo.




----------------------------------
Lista ASNativos:[EMAIL PROTECTED]
http://www.5dms.com/listas
----------------------------------

Responder a