2011-03-24 11 views
22

Escuché que un script altamente comentado se ejecuta un poco más lento que uno no comentado. ¿Es verdad?¿Los comentarios hacen que el código se ejecute más lento?

¿Alguien ha probado esto? (Como la forma mucho más lenta es en porcentajes)

+38

** No te preocupes por eso ** – SLaks

+5

No lo hago, solo tengo curiosidad :) No es como si dejara de comentar – Alex

+0

andra Estoy de acuerdo con @SLaks, pero puedes ejecutar un examen fácil. crear dos archivos php, cada 10000 líneas de longitud (puede crearlos con php, ¿cómo meta es eso?) y en uno en cada línea crear un comentario y en el otro archivo, dejar todo en blanco (con la excepción de la php tags) ejecuta microtime en ellos para ver el tiempo de ejecución. – Patrick

Respuesta

11

Los comentarios no afectarán el tiempo de ejecución del script en el caso normal. Pero el número de líneas que escribe en su código afecta al analizador para leerlo y almacenarlo de manera considerable. Si puede ejecutar ciertas cosas en 20 líneas, intente escribir lo mismo en 1000 líneas, el rendimiento podría afectar si es parte de una aplicación que se ejecuta secuencialmente. Incluso si hay pocas líneas o muchas líneas, las dependencias son importantes. Si está utilizando una biblioteca que depende en gran medida de algunas aplicaciones, obviamente aumentará el tiempo de carga, el tiempo de análisis y el tiempo de compilación y ejecución, etc. En cualquier caso, los comentarios no afectarán considerablemente, pero algunos microsegundos no le costarán mucho. Así que adelante y comente su código y hágalo legible por los codesarrolladores.

11

te puedo decir que el 99,99% del tiempo dedicado a analizar el siguiente archivo:

<?php /* A comment */ ?> 

se gasta en la apertura del archivo, la lectura de su contenido, y el cierre el archivo. Si copió y pegó ese comentario en 10,000 líneas, no hará ninguna diferencia.

+0

Si tuviera 1 gb de comentarios tardaría un tiempo en analizar lol –

2

Si se compila el código, los comentarios se eliminarán durante el análisis, por lo que ni siquiera se incluirán en el código de byte terminado, lo que significa que no hay diferencia.

Si se interpreta el código, entonces el compilador necesita quitar las líneas de comentario, pero se pasa mucho más tiempo ejecutando el programa, por lo que lo diferente es insignificante.

+0

NO están incluidos. – erisco

+0

Oh, lo siento, pensé que querías decir que estaban incluidos. Leí mal. Uf. – BoltClock

Cuestiones relacionadas