Creando codigo huerfano…

Eso pasa cuando uno escribe. Partes de código que harían a un ordenador comportarse de una manera determinada pero errónea. Lo que puede ocurrir es que sea erróneo sólo porque no hace lo que uno tiene en mente.  Quizá es sólo que parece “feo” o con “mal estilo”. El primer paso es comentarlo para que quede ahí, por si aparece una idea de cómo mejorarlo. Esto es algo totalmente absurdo porque, en caso de la nueva idea no funcione, uno estará trabajando ya en otra línea de pensamiento. Y aún en el peor de los casos, con los programas de control de versiones es posible volver a versiones anteriores.

Pero como a un amigo que uno no quiere perder pero el tiempo separa, poco a poco ese bloque comienza a dejarse de leer. Como que va desapareciendo de la visión y los ojos pueden pasar por encima sin llegar a ser consciente realmente de lo que hay ahí. Como el amigo que hace años no se ve, que uno no lo tiene presente, pero si hace memoria o ver una foto, viene a la memoria vívido, no como algo del pasado… aún.

Y lo que sí llega es el momento en que, editando los comentarios y dando formato a todo, uno re-descubre ese trozo de texto. Y después de mucho tiempo trabajando por otro lado, resulta que es totalmente inútil ya. El tiempo ha permitido avanzar a la mente y no cuesta desechar la idea. Ahí es cuando uno está mentalmente preparado para borrar el código. El proceso ha acabado.

Pero de vez en cuando uno tiene ganas de guardar ese pedazo de texto, no porque sea importante o pueda ser útil en el futuro. No. Se decide hacer algo especial con él porque representa lo que uno estaba aprendiendo en ese momento, las primeras ideas cuando aún los fundamentos del lenguaje (o del problema) no están claros y uno no tiene más remedio que tantear sin llegar a entender del todo. Y por eso creo que voy a guardar este código, en el blog. Porque dentro de tiempo, si leo esta entrada, recordaré los inicios en este proyecto, el cambio de ciudad y de país y el trabajo que me trajo aquí. Seguro que entonces me gustará re-leerlo aunque no recuerde exactamente para qué servía. Aunque algo me dice que sí lo recordaré… Veremos.

/*

class Partial_Timer{
public:

//Partial_Timer();
Partial_Timer(const std::string stacktrace){

start_time_=count_time(); //this function should take the time at this moment
end_time_=0;
//partial_time_=(double)(start_time/CLOCKS_PER_SEC);
name_=stacktrace;
gtimer = Global_Timer::getInstance();
LG(SL_INFO)<<“Desde Partial_Time se pasa el nombre de:”                                                                     <<open_register(name_); //only to register new node or find the                                                                                      //previous record.
stopped_=false;

}
~Partial_Timer(){
if(!stopped_){
//get the final time in order to calculate the difference
end_time_=count_time();

partial_time_=((double)(end_time_-start_time_)/CLOCKS_PER_SEC);
//this function registers the time expended by the child process
gtimer->close_register(partial_time_, name_);
}
}

/*Function designed to stop the time measuring at a given point inside the code
* without waiting the end of the scope. This function only needs the string
* that contains the name of the node and the register_time function would
* take care to look for this node and adds time duration and going back
* one position in the open timer vector (the vector that points to the current
* node of the tree.*
void Stop_now(){//(std::string stacktrace){
end_time_=count_time();
partial_time_=((double)(end_time_-start_time_)/CLOCKS_PER_SEC);
gtimer->close_register(partial_time_, name_);
stopped_=true;
}
//Some trivial functions for maintain the encapsulation principle
//Likely, they are useless. Check it and remove them if that is true
std::string get_name() const {return name_;}
double get_time() const {return partial_time_;}

private:
clock_t start_time_;
clock_t end_time_;
std::string name_;
double partial_time_; //the partial amount of time expended by a process = (double)(start_time-end_time)
Global_Timer *gtimer;
bool stopped_; //to know if Stop_now() has been called

inline clock_t count_time(){

return clock();
}

};

*/

Ahí queda esto.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s