Derivacion condicional

Luis Rodrigo Gallardo Cruz rodrigo en nul-unu.com
Jue Jul 12 21:42:48 CEST 2007


On Thu, Jul 12, 2007 at 09:16:43PM +0200, Hernan Martínez-Foffani wrote:
> On 7/12/07, Oswaldo Hernández <listas en soft-com.es> wrote:
>> Clases A y B:  derivan de distintos objetos wx y establecen un
>> interface comun para ellos.
>>
>> Clase C es la que, en funcion del entorno o de los parametros,
>> decide si se ha de utilizar A o B, ademas de añadir algunos metodos.
>>
>> Clases D, E, ... derivan de C y son las que establecen las propiedades y
>> metodos finales para la
>> funcion a realizar. Estas clases finales no tienen que preocuparse
>> sobre si se esta utilizando A o B.
>
> me da la impresión que te estás complicándo demasiado porque
> eso de cambiar la jerarquía de clases en tiempo de ejecución...

El error me parece que es querer a fuerza tener una jerarquia de
herencia. ¿Que tienen que ver D y E con todo esto?

Define al revés, que A y B deriven de C, implementando la interfaz
común y escondiendo las diferencias. Haz que D y E *usen* a C. Y
define (en C o en otro lado) un 'proxy' que, según al entorno o lo que
quieras regrese un C-especializado-con-A o un C-especializado-con-B o
lo que sea.

-- 
Rodrigo Gallardo
GPG-Fingerprint: 7C81 E60C 442E 8FBC D975  2F49 0199 8318 ADC9 BC28
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://mail.python.org/pipermail/python-es/attachments/20070712/0a095807/attachment.pgp>
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


Más información sobre la lista de distribución Python-es