Ejemplo de la herramienta para comparar bloques de código JavaScript
En JavaScript es habitual que exista más de una forma para implementar la misma tarea. Pero no todas son igual de rápidas, eficaces ni igual de fáciles de leer. La mejor opción para seleccionar el método más adecuado es realizar un benchmark en el que se compara el rendimiento de cada una de las opciones con un conjunto de datos. Algo que se ha hecho anteriormente en el blog para comparar el rendimiento de las distintas opciones que hay para iterar en JavaScript o para evaluar cómo puede mejorar el uso de la GPU en ciertos cálculos. Recientemente he descubierto una pequeña aplicación que facilita la creación de pruebas de rendimiento o benchmarks que se pueden guardar y compartir. En esta entrada se verá cómo usar esta herramienta para evaluar el rendimiento de código JavaScript.
En la página jsben.ch se encuentra una pequeña joya que permite realizar un benchmarks de código JavaScript de una manera fácil y rápida. Las cuales se pueden guardar y compartir con compañeros para analizar los resultados.
Como se puede ver en la captura de pantalla, es una herramienta bastante sencilla. A la izquierda se encuentran varios bloques de código en los que se puede escribir los distintos métodos que se desean comparar. Al pulsar sobre el botón RUN TESTS
cada bloque se ejecutará por separado y en la sección results
se mostrará de forma ordenada el tiempo relativo que requiere cada uno de ellos. Para facilitar el análisis una buena idea es agitar un nombre significativo a cada uno de los bloques, especialmente cuando se van a comparar varios.
Además de esto, a la izquierda se puede incluir un título con la descripción de la comparativa. Algo que es de gran ayuda cuando se desea compartir las pruebas. En la sección llamada Setup block
se puede incluir el código que sea necesario ejecutar antes de lanzar la prueba, por ejemplo, para incluir la definición de las funciones que se desea analizar. Este código se ejecutará una vez al iniciar la prueba.
Cualquier operación que sea necesario realizar antes de evaluar cada uno de los bloques de código se debe incluir en la sección boileplate block
. Esta es la zona donde se pueden inicializar las variables.
Una vez realizada la prueba se puede comprar con compañeros u otros usuarios creando una URL única. La cual se puede obtener al pulsar sobre el botón GENERATE PAGE URL
.
Gracias a esta página se pueden comparar los diferentes métodos que se tienen para iterar sobre un diccionario en JavaScript. Para ello se puede recurrir a los ejemplos que se publicaron anteriormente en la entrada “Rendimiento al iterar en JavaScript sobre un vector”. Con lo que se puede crear el siguiente benchmark al que se puede acceder en la URL https://jsben.ch/64LtE.
En dónde se puede ver que la mejor opción es el método for
seguido muy de cerca por reduce
. Nótese que en este caso no se muestra el tiempo, sino que un benchmark de cada uno de los bloques, el valor más alto indica un mejor rendimiento.
Contar con un método para evaluar el rendimiento de código JavaScript es fundamental para seleccionar la mejor opción. En esta entrada se ha visto una herramienta web con la que se puede comparar el rendimiento de diferentes bloques de código JavaScript.
Imagínate en una sala con un grupo de personas, por ejemplo, en una oficina, un…
En el trabajo diario con ordenadores, es común encontrarse con tareas repetitivas: realizar copias de…
En casi cualquier análisis estadístico —ya sea en medicina, psicología, economía o ciencia de datos—…
El MSCI World Index suele presentarse como “la ventana al mundo” para quienes invierten en…
En el mundo del análisis de datos solemos escuchar una idea poderosa: cuantos más datos,…
¿Te has encontrado con este error al intentar instalar paquetes con npm? npm ERR! code…
This website uses cookies.