[pyar] Clases muy grandes (+ Clases Parciales)

Gonzalo Bonigo gonzalobonigo en gmail.com
Mar Mar 4 11:15:37 ART 2014


Gracias a todos! Voy a analizar todas las posibilidades!

Sds!


El 2 de marzo de 2014, 8:44, Alejandro Santos <listas en alejolp.com> escribió:

> 2014-03-02 12:40 GMT+01:00 Alejandro Santos <listas en alejolp.com>:
> > 2014-03-01 20:44 GMT+01:00 Gonzalo Bonigo <gonzalobonigo en gmail.com>:
> >> 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.
> >>
> >
> > Probaste composición en vez de herencia?
> >
> > Decís que tu God Object (la gran clase autogenerada) tambien mantiene
> > estado, por lo que capaz querés mantener el estado entre diferentes
> > clases.
> >
> > Podrías hacer una clase nueva por cada "vision" de la clase, pero que
> > no extienda la clase God sino que sea una clase independiente que
> > componga a God, de forma de escoder la clase God original. Lo malo es
> > esto es que tenés mucho código boilerplate, pero que capaz puedas
> > autogenerarlo modificando tu generador original, o haciendo uno
> > quick-and-dirty-hack una única vez.
> >
>
> La segunda (y capaz mas importante) contra de esto es que no podés
> redefinir metodos en tus clases "RoleX", porque justamente no estas
> extendiendo sino componiendo. Soluciones hay varias, si nos contás un
> poco mas en detalle sobre esto capaz sea mas fácil de encontrar una
> solución.
>
> Saludos
>
> --
> Alejandro Santos
> _______________________________________________
> 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
>



-- 
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*
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140304/afd6505c/attachment.html>


More information about the pyar mailing list