[pyar] Clases muy grandes (+ Clases Parciales)

Ezequiel Brizuela [aka EHB or qlixed] qlixed en gmail.com
Sab Mar 1 18:57:12 ART 2014


Ah. Me olvide de menciknarte q podrias usar metaclases y "combinar" las
clases. La parte "meta" de python es muy poderosa y podes hacer cosas muy
copadas/raras/desastrosas.
El mar 1, 2014 6:55 PM, "Ezequiel Brizuela [aka EHB or qlixed]" <
qlixed en gmail.com> escribió:

> Cosas q podes usar:
> 1) Composicion: creas una clase nueva que use la autogenerada y que defina
> los metodos adicionales. Si los metodos adicionales son siempre iguales
> podes crear una clase aparte( digamos class F) y usar composicion con la
> clase autogenerada y la F.
>
> 2) Herencia: no se por que pensas q queda mal, pero el principio
> fundamental de la herencia es lo q vos queres hacer o estas haciendo,
> extender la funcionalidad de una clase preexistente ( la autogenerada)
>
> Otras cosas podrias hacer con patrones, como (mal) usar un proxy o
> adaptator, o usar mixins, pero eso depende mas de q estes puntualmente
> haciendo.
>
> Yo te diria q pienses nuevamente lo de la herencia...
>
> Saludos
>  El mar 1, 2014 4:44 PM, "Gonzalo Bonigo" <gonzalobonigo en gmail.com>
> escribió:
>
>> Buenas!
>>
>> Tengo el problema de una clase muy grande con muchos métodos. No puedo
>> dividir mi clase en muchas clases y usar herencia porque mi clase hereda de
>> una clase generada automáticamente, e implementa los métodos que faltan,
>> además como es código generado no tengo control sobre lo atributos.
>> Me encantaría poder definir mi clase en varios archivos, separando los
>> métodos que tienen tareas en común. Se que C# tiene el concepto de *Clases
>> Parciales*, el cuál permite exactamente lo que yo necesito. Tengo una
>> idea de como implementar esto utilizando metacleses y, posiblemente,
>> decoradores.
>>
>> El objetivo del mail es saber si alguien ya tubo este problema y como lo
>> solucionó, o si ya hay algo de esto echo antes de ponerme a implementar
>> nada.
>>
>> Sds!
>>
>>
>> --
>> Debugging is twice as hard as writing the code in the first place.
>> Therefore, if you write the code as cleverly as possible, you are, by
>> definition, not smart enough to debug it.  -- *Kernighan*
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140301/fdfe56fc/attachment.html>


More information about the pyar mailing list