Skip to content

PDT: ohh la gloria!!

Este fin de semana por fin me instale el Eclipse PDT con el Zend Debugger y es la neta del planeta, algo complicado de entenderlo comparado con soluciones mas simples como jEdit (mi editor de planta durante 3 años).

Más que nada por al contrario de JEdit que comienzas con nada y añades los plugins que quieres(haciendo escalada la transición de newbie a experto), Eclipse o mejor dicho PDT, ya viene de planta con mil cosas encima y son pocas las cosas que restan por añadir (en mi caso Subversion y el Zend WebServer Debugger), haciendo que la interfaz sea algo recargada y complicada para alguien con no haya usado antes el ZendStudio o alguna herramienta similar.

Unos consejos de lo poco que ví hoy:

Para ahorrarme pasos, también pueden instalarlo desde eclipse e instalar el Zend Debugger desde el sistema de paquetes.

  • También hay que instalar el Web Server Debugger, para que puedas debuggear en tu localhost o donde sea que necesites, las instrucciones son bastante sencillas.

Funciona como un WebService, de forma que tienes que tener un Cliente(eclipse) y un Servidor(Apache configurado con el Zend Debugger) para poder debuggear.

  • Si vas a hacer un proyecto controlado desde svn, primero instala el paquete de Subversion SubEclipse, y haz tu “nuevo proyecto desde SVN”, una vez descargado el Wizard te ayudara a crear tu “nuevo proyecto PHP”.

Ahora con esta herramienta no me pasara lo que paso aquel día pasado:

El Jueves de la semana pasada estuve programando una pequeña modificación a un sistema que hice hace un buen rato en Logística Dynamica, la modificación era tan simple como añadir a una tabla la hora y fecha del acceso de los usuarios, así como el cliente el proyecto con el que iniciaron sesión.

Sólo fue cosa de crear una tabla nueva, escribir 4 lineas de código y hacer un commit al repositorio.

En el servidor sólo fue necesario correrla consulta de modificación y hacer un update.

Después de todo esta es una modificación extremadamente sencilla.

Pues bien… en servidor el código tronó como palomita y para acabarla el código tronaba antes de poder ejecutar el subsistema de debug que me escribe los errores en una tabla de la base de datos.

Me tuve que dar una segunda vuelta a Logística para reparar el sistema, pelearme con mi Laptop que aun tiene Ubuntu 5.10(la tengo muy abandonada a la pobre) y pasarme media hora depurando capa tras capa de abstracción(Esto del módelo MVC es la onda hasta que te encuentras con un error en lo profundo del código).

El maldito error estaba en la ultima de todas la capas que puede tocar un desarrollador web sin meterse al código de la base de datos… en la base de datos, resulta que el usuario de la base de datos, no tenia permiso para escritura.

En un sistema normal, esto hubiera provocado solamente un error a pantalla, pero en mi código… al no poder insertar la fila, llama al sistema de debug, para escribir en la tabla que no puede escribir… pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir… pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir… pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir… pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir… pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir… pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir… pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir… pero al escribir también fallaba y llamaba al sistema…..

Hasta que se llega al límite de recursión de PHP y el servidor truena el hilo… como resultado yo no veo al maldito error por ningún lado… demonios!!!

Al final tuve que volver a dejar todo el código modificado para debuggear el error justo como al inicio de todo el show y cambiar los permisos.

Post a Comment

Your email is never published nor shared. Required fields are marked *
*
*