[pyar] ¿Se puede cambiar el objeto list de python?

Matigro matigro en gmail.com
Lun Nov 8 14:43:20 ART 2010


El día 8 de noviembre de 2010 13:25, Roberto Alsina
<ralsina en netmanagers.com.ar> escribió:
>> 2010/11/8 Roberto Alsina <ralsina en netmanagers.com.ar>:
>> > On Monday 08 November 2010 12:26:19 Hugo Ruscitti wrote:
>> >> uh. me temía eso, que no se pudiera... la verdad es que me gustaría la
>> >> opción 1 de cambiar el comportamiento de las listas, porque me parece
>> >> mas intuitivo para los usuarios usar las listas como si fueran listas
>> >> estándar de python y no un objeto de mi dominio... al menos dentro
>> >> de este framework que estoy armando...
>> >
>> > No, eso no es intuitivo, eso es forth. Redefinir el lenguaje lo que hace
>> > es provocar lockin. Todo el código que usa tus listas mágicas no tiene
>> > sentido fuera de tu framework y no es python "de verdad". Es contra por
>> > lo menos tres lineas del zen :-)
>>
>> Sin contar que abrís la posibilidad de que tu framework rompa otros
>> módulos.
>
> Si heredás de list y no pisás ninguno de los métodos existentes no deberías.
> A menos que otro módulo haga una chanchada similar.

El gancho de python es que es orientado a objetos, y ésto te permite
redefinir un objeto a tu gusto, haciéndo una subclase de éste (nada
nuevo lo que dije).
Creo que con eso lográs portabilidad de tu proyecto, sea cual fuere.
Si modificás list, puede ser para agregarle métodos o para cualquier
otra cosa, cada vez que quieras usar este type vas a tener que leer
qué hace. O peor aún si quiero usar tu framework voy a tener que ver
qué hace el list :(

-- 
http://www.linkedin.com/in/matiasgieco



More information about the pyar mailing list