viernes, 19 de septiembre de 2008

Mejorando código

Hoy me puse a ver unos fuentes en un sistema importante que estoy auditando y me encuentro con cositas muy graciosas como por ejemplo esta (alteré un poco el código por razones obvias pero les prometo que no lo empeore, así estaba cuando llegue).



Bueno, los que saben algo ya estarán diciendo WTF, para aquellos que no saben tanto alguno de los problemas aquí son los siguiente:

1 - Código repetitivo para hacer exactamente los mismo
2 - Inclusión de los datos de la conexión múltiples veces, con una vez al principio alcanza
3 - Conexiones repetitivas a la base, eso consume recursos en el servidor y hace más lenta la respuesta de la página.
4 - Código feo y difícil de entender, muy acoplado y poco amigable a los cambios

Podría nombrar mas problemas pero dejemoslo ahí, creo que se entiende lo que estaba mal. Por que pasa esto, calculo que

1- Falta de experiencia
2- No leer los manuales
3- No Releer los manuales
4- Copypastear de internet código sin entender que coño hace
5- No hacer chocar las neuronas en la cabeza con el fin hacer las cosas más fácil para uno mismo

Como quedaría un poco mas lindo y entendible este código, bueno esta es una alternativa.



Si si, eso hace lo mismo.... , y lo único que hice fue agregar un bucle que se aprende en la segunda clase de cualquier curso de programación :S, no se necesita ser un gurú para saber eso, si alguien dice "yo se programar" debería como mínimo saber eso.

Es una lástima que los dueños de los sistemas, por ende los que contratan el servicio, no puedan entender esto y darse cuenta del valor de un buen programador y el de uno malo (y esto no esta vinculado al factor dinero, es decir el bueno cobra mas y el malo menos, no no, esto no necesariamente es así) lamentablemente esto es una selva muchachos, salgan con el cuchillo entre los dientes y que se salve quien pueda.

4 comentarios:

Toto dijo...

vieja, me recomend algun ide para php en linux(tengo ubuntu hardy)??? tengo que hacer web services para cliente servidor, si sabes de alguna forma de aprender rapido te agradezco tambien. nos vemos. toto

Casiva Agustin dijo...

Toto, que hace, mira últimamente me canse un poco de usar VIM y también ando buscando alguna IDE que este linda para trabajar con php. Estoy probando dos, la primera es netbeans para php y la otra es Quanta.

Te cuento que Netbeans esta linda y muy completa y anda para Windows y Linux, tambien es posible debuggear el codigo desde esta IDE mediante Xdebug, lo malo es que en mi máquina (que es chica) se muere.

Quanta, no esta tan buena como Netbeans, pero es mucho mas rápida, tiene un editor muy copado con intellisense y toda la bola, un visor tipo WYSIWYG para ver la página que uno desarrolla y otras cosas más. Lo único malo es el tema que Quanta solo anda en Linux y otros parecidos.

Después hay varias IDE's mas como por ejemplo Eclipse PDT y PHP Eclipse. Y también otras comerciales como ZendStudio.

Bueno, espero que te sirva el TIP.

pelin dijo...

jajaja que pedazo de animal el que escribio ese codigo chamigo. copy paste a full.con cada cosa te encontras por ahi :). un abrazo!

Casiva Agustin dijo...

En realidad el autor de ese código no tenía idea de PHP, se le pidió el laburo, lo acepto ( como todos de algo tenemos que vivir ) y termino haciendo lo que pudo. Si ves el sistema andando te digo que funcionalmente es aceptable (anda y los usuarios no se quejan), el tema es que, hoy por hoy, hacer un cambio y/o agregarle alguna funcionalidad es una tortura y tiene muchas cosas que le faltan.

Ciertamente si hubiese investigado más y/o preguntado a alguien capaz no salía tan así, pero es sabido que cada uno tenemos nuestra forma de aprender, jejeje.