9

Sé que las líneas de código (LoC) es una métrica de código dudoso, si no falso, y hay muchas publicaciones al respecto.¿Qué hace Visual Studio Code Analysis Lines of Code con HTML, CSS y Javascript?

Sin embargo ... Todavía tengo que proporcionar un recuento de LoC para un sitio web en un informe.

Estaba usando la función de métricas de código de análisis de código de Visual Studio 2010 para obtener el LoC cuando me preguntaba ¿qué hace con o cómo cuenta HTML, CSS y Javascript?

El texto VS ayuda proporciona esta descripción de la métrica -

líneas de código - Indica el número aproximado de líneas en el código. El recuento se basa en el código IL y, por lo tanto, no es el número exacto de líneas en el archivo de código fuente. Un conteo muy alto puede indicar que un tipo o método está tratando de hacer demasiado trabajo y debe dividirse. También podría indicar que el tipo o método puede ser difícil de mantener.

Así que mi pregunta multiparte es ... ¿HTML, CSS, Javascript se compilan en IL y si lo hace entonces debería asumir que está incluido en la métrica VS LoC? Si no se compila en IL, ¿cuál es la mejor forma de calcular o incluir HTML, CSS y Javascript en la métrica de LoC para mi informe? ¿O deberían incluirse en LoC?

Respuesta

2

¿HTML, CSS, Javascript se compilan en IL?

No - esos archivos son estáticos. La única vez que se compilan es si los compones en el código subyacente y los agregas al buffer Response directamente.

Si no se compila en IL, ¿cuál es la mejor manera de calcular o incluir HTML, CSS y Javascript en la métrica de LoC para mi informe? ¿O deberían incluirse en LoC?

diría contando esos archivos pueden no ser de mucha utilidad - a pesar de conseguir una manija en JavaScript tamaño del archivo podría ser de importancia, ya que tendría algún efecto sobre los tiempos de carga (archivos más grandes tardan más en descargarse - - pero a menos que tengas 20K líneas de JavaScript, no debería ser una gran diferencia).

Existen algunas herramientas que cuentan las líneas de código para todos los tipos de archivos. El contador LOC de Microsoft es here. Además, herramientas como NDepend (que tiene una versión de prueba gratuita) también pueden contar líneas de código.

+0

y cuál sería la diferencia si alguna de que fue lanzado a través de un minimizador? ¿Lo considerarían como un LOC? – Rob

+0

@Rob Supongo que depende de cómo lo minimiza. Realmente nunca lo pensé, ya que realmente no me concentro en el número de líneas JavaScript de código que tengo. Por lo general, me enfoco más en el tamaño de los archivos (y todos los recursos) que descargo al cliente. El embalaje y la compresión definitivamente están en juego en la producción de mis aplicaciones. –

+0

@JSager Pero la minificación solo elimina el espacio en blanco y el formateo, no cambia los bucles, las declaraciones, etc. Puede tener una línea de texto muy larga y menos tamaño de archivo, pero el número real de enunciados del código realmente no cambia. –

0

Aquí dice que está "basado en el código IL". Por definición, entonces no puede incluir idiomas que no sean IL, como HTML, CSS y Javascript.

No estoy seguro de cómo se puede llegar a este conteo, pero me preocuparía saber a quién le está pidiendo que cuente: es una medida inútil, especialmente para esos idiomas.

0

HTML y CSS no son lenguajes de programación y nunca se compilan. Javascript obtiene algunos códigos intermedios generados por algunos navegadores, pero creo que eso es solo algo interno con lo que VS no tiene nada que ver.

1

¿Se compila HTML/CSS/JS a IL? Es posible (y también es una buena idea) compilar plantillas HTML para IL, pero dudo que lo haya hecho en su caso.Sus archivos probablemente solo sean estáticos y se sirvan a petición.

¿Alternativo?CodeAnalyze como en How do you count your Lines of Code?

Incluye HTML/CSS/JS en LoC? Si necesita esta estadística para mostrar cuánto ha hecho, puede incluir todas. Si es para tener una idea aproximada de la complejidad, solo incluiría los archivos Javascript que haya escrito (excluya jQuery, etc.).

9

I
piensan
que
hace
no
recuento
ellos,
y
este
es
claramente
la
más
así
pensaron
cabo
respuesta
en
la
historia
de
Pila
desbordamiento
basado en

línea
recuento.
también
a
recuento
líneas
en
sus
JavaScript
archivos
intenta

find . -name '*.js' | xargs wc -l 
+6

Debe .... resistir .... votando ...... esto ....... impresionante ...... respuesta ........ .. –

+1

Además, si estás en Windows como sospecho, prueba cygwin. – JSager

+0

':% s// \ r/g' 10chars –

Cuestiones relacionadas