Debugger
Clase 27 de 31 • Curso de Fundamentos de Node.js
Contenido del curso
Cómo manejar la asincronía
Entender los módulos del core
Utilizar los módulos y paquetes externos
Conocer trucos que no quieren que sepas
Manejar herramientas con Node
Desarrollar con eficacia y asegurarte de que tu codificación sea accesible y depurable es esencial en el mundo de la programación. En este artículo, vamos a sumergirnos en las técnicas avanzadas de inspección y depuración de código utilizando herramientas integradas que pueden facilitarte la vida como desarrollador. Veremos cómo aplicar estos métodos utilizando como ejemplo el servidor HTTP que se desarrolló en una clase de módulos previa.
¿Cómo comenzar la depuración con Node.js?
Node.js ofrece una herramienta integrada muy poderosa para la depuración de código: el inspector. Para activarlo, necesitas iniciar tu aplicación con una bandera especial en la línea de comandos. Veamos cómo lo puedes hacer:
Arranque del Inspector
Para arrancar tu servidor y permitir la inspección del código, necesitas agregar la siguiente bandera al momento de ejecutar tu archivo JavaScript en Node.js:
node --inspect <archivo>.js
¿Qué sucede una vez activado el Inspector?
Luego de correr el comando anterior, Node.js no solo ejecutará tu aplicación, sino que también iniciará un servidor WebSocket en un puerto que por defecto es el 9229. Esto te permitirá conectar herramientas de inspección y realizar una depuración efectiva.
¿Cómo inspeccionar el código con Google Chrome?
Google Chrome es una herramienta muy efectiva y rápida para la inspección de código JavaScript ejecutado por Node.js. Para acceder al inspector, escribe en la barra de direcciones de Chrome:
chrome://inspect
En esta página, verás todos los procesos de Node.js que se pueden inspeccionar. Selecciona el proceso deseado y podrás ver el código, ejecutarlo paso a paso y mucha más funcionalidad de depuración.
Depurando la memoria
Investigar cómo se maneja la memoria durante la ejecución de tu aplicación es clave para evitar fugas de memoria o problemas de rendimiento. Node.js te permite:
- Grabar y visualizar el uso de la memoria en tiempo real.
- Observar el recuento de objetos y cómo se liberan.
- Identificar operaciones costosas de memoria que puedan ralentizar tu aplicación.
Perfilado de CPU
La herramienta de perfilado de CPU te permite grabar y analizar el rendimiento de tu código en tiempo de ejecución:
- Inicia un perfilado de CPU desde la consola de inspección.
- Realiza las operaciones que desees analizar.
- Detén la grabación para ver una desglose de donde se está consumiendo más tiempo.
Inspección de variables y puntos de pausa
Inspeccionar variables en tiempo real y añadir puntos de pausa son funcionalidades esenciales para entender el flujo de tu aplicación y la lógica dentro de tu código:
- Añade puntos de pausa para detener la ejecución en momentos específicos.
- Observa el valor de las variables y cómo cambian paso a paso.
- Modifica valores en tiempo real para probar diferentes comportamientos.
Conclusión
Por último, recordar que estas herramientas de depuración no solo te facilitan encontrar y corregir errores sino que también te ayudan a entender mejor cómo funciona tu aplicación en diferentes escenarios. Recuerda utilizar estas técnicas para mejorar la calidad de tu código y volverte un desarrollador más eficiente y efectivo. ¡Sigue explorando y aprendiendo para dominar el arte de la depuración y llevar tus habilidades de programación a un nuevo nivel!