Desaconsejado? ventajas-desventajas?

Attila Saorin mostroratas en yahoo.es
Jue Nov 28 02:48:51 CET 2002


 --- Marcos Sánchez Provencio <rapto en arrakis.es> escribió: 
> Lo único que se me ocurre es que mx.DateTime redefina cualquier
> nombre,
> seguramente cmp. Hay que recordar que lo de from xx import * esta
> DESACONSEJADO, porque no está muy claro si el espacio de nombres se
> te
> hace cisco tras usarlo. Algunos módulos están preparados para usarlo,
> pero el código queda confuso porque no se sabe de dónde salen los
> nombres (si no se usa, sólo hay que buscar dónde se define y ya
> está).

Hola Marcos,

bueno, me ha extrañado un poco leer eso de que está desaconsejado,
tienes razón en lo que dices, pero también es verdad que es muy común
(y casi diría lo más general) es que se diga que no se debe dejar la
posibilidad de que se pudiera usar todo un módulo si sólo queremos usar
un único método ¿no? es decir, al poner, 'import lo_que_sea' hacemos
que se puedan acceder a todos los métodos de dicho módulo, lo cual no
hace a un programa muy seguro que digamos, casi siempre he oído que
sólo debes dejar que la gente trabaje con lo que nosotros estamos
seguros que queremos que trabajen (¿verdad Hernan?). Desconozco si para
realizar esto, con tu método, para securizar eso, defines la variable
__all__ con los métodos que permitiras usar fuera de ese módulo o no
para asegurarte que no usaran lo que no les hace falta :O

Esto lo digo para buscar los pros y los contras de estas dos formas de
programar, a cada uno yo lo veo alguna en cada sentido, de hecho, al
final suele ser normalmente una decisión personal más que otra cosa o
de manía, pero ¿qué creeis que realmente es más recomendable? ¿donde se
aconseja el uso de la versión de Marcos? ¿para programar en Python o
para todos los lenguajes?

Bueno, a ver si sale un buen tema de debate de esto ;)

Saludos.

Attila

_______________________________________________________________
Yahoo! Messenger
Nueva versión: Webcam, voz, y mucho más ¡Gratis! 
Descárgalo ya desde http://messenger.yahoo.es


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