Benchmark de javascript en navegadores

Jeff Atwood de Coding Horror ha realizado un benchmark de la implementación de javascript de las últimas versiones de los navegadores más usados actualmente: Opera 9.5, Safari 3, Explorer 7 y Firefox 2. Para ello utilizó un nuevo benchmark lanzado por Apple llamado SunSpider que se basa en código “real” o sea código que normalmente es usado en aplicaciones web, las diferentes categorías que cubre son:

3d Cómputo que se usaría para renderizar 3d, como operaciones de punto flotante.
accesso Acceso a arrays, propiedades de objetos y a variables
bitops Operaciones bitwise
Control de flujo Bucles, recursividad, condicionales.
criptografía Código para funciones criptográficas.
fecha Desempeño del objeto “Date”
Matemáticas Cálculos matemáticos
regexp RExpresiones regulares
string Operaciones con cadenas de caracteres

Como podrás ver en los resultados del benchmark, Opera tuvo el mejor desempeño pero como indica Jeff tuvo que usar la última beta del navegador para que todo el benchmark funcionara correctamente. Le sigue Safari, un gran resultado considerando que las pruebas se hicieron sobre el SO Windows, seguramente sobre mac OSX sus números incluso mejorarían. El tercer lugar sería para Firefox 2, pero eso gracias a una anomalía de Explorer en las operaciones con Strings, de no ser por eso, Explorer gana por bastante margen al navegador de Mozilla.

En un mundo en que cada vez se usa más javascript, este tipo de benchmark empiezan a tener sentido. Lo de Firefox es una llamada de atención al equipo de desarrollo, resulta increible que es prácticamente el browser más lento en javascript. Sería interesante ejecutar el benchmark sobre Firefox 3 beta 2.

Gráfico de la comparativa

Manual de codificación y estilo para programadores

El manual trata toda clase de aspectos relacionados con el código en forma de “catálogo de buenas prácticas ” – desde nombres de identificadores hasta control de flujo, pasando por recomendaciones sobre trazas, codificación de pruebas unitarias o modelo de datos. No pretende sustituir, claro está, una lectura de los libros pertinentes (se incluye una amplia bibliografía), pero reconociendo que muchas veces no hay mucho tiempo para leer y que la rotación de programadores es muy grande, intenta paliar esta carencia resumiendo lo mejor de las diferentes fuentes, a modo de solcuión “temporal”.

El manual se encuentra ubicado aquí y espero poder actualizarlo con los comentarios y sugerencias que reciba. (Formato : PDF, 86 páginas, 1,05 Mb)