Acerca de mi

Soy Javier Ferrer González.

Actualmente trabajo como desarrollador web backend en Uvinum, estoy finalizando el Grado en Ingeniería Informática en la FIB-UPC y doy clases en el Máster de Programación Web de Alto Rendimiento de LaSalle BCN.

En este blog encontrarás posts sobre internet, programación y reflexiones variadas.

Si quieres saber más acerca de mi, aquí tienes mi Currículum y el formulario de contacto.
Acerca de mi

Debugar aplicaciones PHP

En este primer artículo hablaré sobre las ayudas que disponemos a la hora de debugar aplicaciones PHP, pero empecemos por el principio…

Como sabéis, el debugar un proceso de una aplicación, se reduce a revisar con detenimiento qué pasa con todos los parámetros que intervienen en el flujo de ejecución de tu programa, con el único fin de encontrar el fallo que hace obtener un resultado inesperado. Pues bien…

Si hay algún aspecto de la programación que a día de hoy me siga indignando, es el proceso de debugado.

Para empezar, porque cuando tengo que debugar un algoritmo, significa asumir que he perdido la partida. Desde el momento en el que tengo que revisar un código escrito por mi, con un comportamiento que no es el que yo esperaba, es porque no he sabido imlementarlo como debía. Esto puede deberse a que han habido factores con los que no contaba a la hora de desarrollarlo, o por lo razón que sea, pero está claro que algo se ha escapado.

Llegados a este punto, resulta bastante tedioso tener que ir dando palos de ciego hasta acotar lo suficiente el rango de posibilidades por las que puede estar fallando tu algoritmo, pero por eso, hay herramientas como xdebug (para el caso concreto de PHP) que facilitan esta tarea.
Pero aún así, hay aspectos que se escapan de las capacidades de este tipo de herramientas, o incluso a veces se hacen demasiado pesadas como para revisar algo muy concreto, así que cualquier otro tipo de ayuda es bienvenida.

Aquí es donde entra en juego Sifo, un framework enfocado al desarrollo web basado en PHP que (cómo no) aplica el patrón MVC. Y entra en juego con una de las características que más se echa en falta aún a día de hoy en este tipo de herramientas, un completo apartado de debug. Así que…

Funcionalidades que me ponen verraco:

  • Control de tiempos de ejecución desglosado
  • Trazado de controladores ejecutados y sus respectivas asignaciones a plantillas
  • Visualización de consultas a Sphinx
  • Detalle de consultas SQL
  • Contenido de los datos almacenados en sesión y cookies
  • Posibilidad de incluir el debug de variables PHP tanto en el apartado de debug como en la consola de navegador con una línea
    • \Sifo\Debug::log( $variable_peleona, 'warn', 'browser_console' );

Debugar aplicaciones PHP con Sifo

 

Share this Story

Posts relacionados

2 Comments

  1. Carlos

    2 Octubre, 2012 at 9:37

    Buenas Javier,

    para los que no usamos SIFO que nos recomiendas?

    Has utilizado alguna vez algunas funciones como debug_backtrace?

    Saludos.

    Responder

  2. Javier Ferrer

    17 Octubre, 2012 at 20:40

    Iep!

    Efectivamente el método debug_backtrace nos aportará toda la información que podemos visualizar en cuanto a la traza ejecutada mediante el módulo de debug de Sifo (y muchísima más), el “problema” es justamente ese, que nos aporta información de más que quizás no necesitamos en un determinado momento para un debug más “a primera vista” y carece de ciertos aspectos que sí contempla el debug de Sifo.

    En resumidas cuentas, sí que recomendaría usar un debug de este tipo ya que aporta todo tipo de información sobre la ejecución de la aplicación, pero si eres hombre y dependiendo de la viabilidad de la implantación, te recomendaría que te plantearas usar Sifo 🙂

    Responder

Deja un comentario

Subscríbete por email

Recibe las noticias que se publiquen en tu buzón:

Google+

Facebook