On Wed, 23 Jun 2010 17:32:08 +0100 monoBOT wrote: > Pero claro me encuentro en que si voy modificando y modificando el > código el programa no avanza, supongo que llegan momentos en los que > tienes que dar un golpe en la mesa y decir hasta aquí llegué (como > cuando yo tuve que cambiar de xml a sql) pero también hay momentos en > los que hay que ir a por la faena para poder llevar adelante el > proyecto.
Planteas un tema interesante, aunque probablemente la cuestión no tenga más guía que la experiencia (a parte de lo ya comentado de utilizar control de versiones y testing). Como en todo escenario en que se busca el "justo medio" (en este caso en el vasto espacio que media entre la desidia y la desmesura), tienes ejemplos de lo negativo de ambos extremos. En "Coders at work" se lamenta Simon Peyton Jones sobre la imposibilidad de refactorizar código: "The most depressing thing about life as a programmer, I think, is if you’re faced with a chunk of code that either someone else wrote or, worse still, you wrote yourself but you no longer dare to modify. That’s depressing." En el otro extremo es muy ilustrativo ese cuento de Balzac sobre un pintor obsesionado con retocar su obra: "Al acercarse percibieron, en una esquina del lienzo, el extremo de un pie desnudo que salía de ese caos de colores, de tonalidades, de matices indecisos, de aquella especie de bruma sin forma; un pie delicioso, ¡un pie vivo! Quedaron petrificados de admiración ante ese fragmento librado de una increíble, de una lenta y progresiva destrucción. Aquel pie aparecía allí como el torso de alguna Venus de mármol de Paros que surgiera entre los escombros de una ciudad incendiada." --- Personalmente aborrezco el dicho de "si funciona, no lo toques". Si no "tocáramos" las cosas que "funcionan", seguiríamos en las cuevas. Refactorizar es fundamental en el (interminable) proceso de aprendizaje. Por ello, es recomendable tener varios proyectos propios (y públicos) que puedas pulir sin las restricciones (de tiempo y fiabilidad) que aplican al código que desarrollas para terceros. _______________________________________________ Python-es mailing list [email protected] http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
