¿Es posible encontrar el número de líneas de código en una solución completa? He oído hablar de MZ-Tools , pero ¿hay un equivalente de código abierto?
800
¿Es posible encontrar el número de líneas de código en una solución completa? He oído hablar de MZ-Tools , pero ¿hay un equivalente de código abierto?
Respuestas:
Visual Studio 2010 Ultimate tiene este incorporado:
fuente
He encontrado powershell útil para esto. Considero que LoC es una métrica bastante falsa de todos modos, por lo que no creo que deba exigirse nada más formal.
Del directorio de una solución pequeña:
Eso contará las líneas no en blanco en todos los archivos .cs y .xaml de la solución. Para un proyecto más grande, acabo de usar una lista de extensiones diferente:
¿Por qué usar una aplicación completa cuando una sola línea de comandos lo hará? :)
fuente
(dir -exclude *.g.cs -include *.cs,*.xaml -recurse | select-string .).Count
Yo usé Ctrl+ Shift+ F. A continuación, coloque un
\n
en el cuadro de búsqueda y active el cuadro de expresiones regulares. Luego, en los resultados de búsqueda, al final de la pantalla, se encuentra el número de archivos buscados y las líneas de código encontradas.Puede usar
[^\n\s]\r\n
para omitir líneas en blanco y solo espacio (créditos a Zach en los comentarios).fuente
Look at these file types:
menú desplegable de opciones debajo deenable regular expressions box
.[^\n\s]\r\n
omite líneas en blanco, incluso con espacios en ellas.Un contador de línea de código abierto para VS2005, 2003 y 2002 está disponible aquí:
http://www.wndtabs.com/
También se está discutiendo la creación de un complemento de conteo de líneas VS, completo con código en Codeproject, aquí
http://www.codeproject.com/KB/macros/LineCounterAddin.aspx
También Slick Edit Gadgets tiene un buen contador de líneas, aquí:
http://www.slickedit.com/products/slickedit
y Microsoft Visual Studio Team System 2008 incluye un buen contador de línea.
Pero recuerda:
fuente
Aquí hay una actualización para Visual Studio 2012/2013/2015 para aquellos que desean hacer la opción "Buscar" (que creo que es la más fácil): este RegEx encontrará todas las líneas no en blanco con varias exclusiones para obtener los resultados más precisos .
Ingrese el siguiente RegEx en el cuadro "Buscar". Asegúrese de seleccionar la opción "Usar expresiones regulares". Cambie la opción de búsqueda a "Proyecto actual" o "Solución completa" según sus necesidades. Ahora seleccione "Buscar todo". En la parte inferior de la ventana Buscar resultados , verá "Líneas coincidentes", que son las líneas de recuento de códigos.
Este RegEx excluye los siguientes elementos:
Comentarios
Comentarios de varias líneas (suponiendo que las líneas están correctamente comentadas con un * delante de cada línea)
XML para Intellisense
Comentarios HTML:
Usando declaraciones:
Apertura de llaves:
Cierre de llaves:
Nota: cualquier cosa entre llaves se incluiría en la búsqueda, pero en este ejemplo solo contarían 4 líneas de código, en lugar de 18 líneas reales no en blanco:
Creé esto para darme un recuento de LOC mucho más preciso que algunas opciones anteriores, y pensé que lo compartiría. A los jefes les encantan las cuentas de LOC, así que estoy atascado con eso por un tiempo. Espero que alguien más pueda encontrar esto útil, avíseme si tiene alguna pregunta o necesita ayuda para que funcione.
fuente
Encontré este consejo: LOC con VS Buscar y reemplazar
Sin embargo, no es un complemento si eso es lo que estás buscando.
fuente
cloc es una excelente línea de comandos, ejecutable de Windows basada en Perl que desglosará las líneas en blanco, las líneas comentadas y las líneas de código fuente, agrupadas por formatos de archivo.
Ahora no se ejecutará específicamente en un archivo de solución VS, pero puede repetirse a través de directorios y puede configurar filtros de nombre de archivo como mejor le parezca.
Aquí está la salida de muestra de su página web:
La escala equivalente de tercera generación es una estimación aproximada de cuánto código tomaría en un lenguaje de tercera generación . No es terriblemente útil, pero interesante de todos modos.
fuente
choco install cloc
y luegocloc .
en su solución dir. ¡Trabajo hecho!Las respuestas aquí están un poco desactualizadas, pueden ser de vs 2008. Porque en las versiones más nuevas de Visual Studio 2010/2012, esta característica ya está incorporada. Por lo tanto, no hay razón para usar ninguna extensión o herramientas para ello.
Característica para contar líneas de código - Calcular métricas. Con él puede calcular sus métricas (LOC, índice de mantenimiento, índice ciclomático, profundidad de herencia) para cada proyecto o solución.
Simplemente haga clic derecho en la solución o proyecto en el Explorador de soluciones,
y seleccione "Calcular métricas"
Los datos posteriores para el análisis y la agregación podrían importarse a Excel. También en Excel puede filtrar las clases generadas u otro ruido de sus métricas. Estas métricas, incluidas las líneas de código LOC, podrían recopilarse también durante el proceso de compilación e incluirse en el informe de compilación
fuente
Las expresiones regulares han cambiado entre VS2010 y 2012, por lo que la mayoría de las soluciones de expresiones regulares aquí ya no funcionan
Encontrará todas las líneas que no están en blanco, no son solo un paréntesis ('{' o '}') y no solo un #include u otro preprocesador.
Use Ctrl- shift- fy asegúrese de que las expresiones regulares estén habilitadas.
La expresión regular correspondiente para VS 2010 y anteriores es
fuente
En Visual Studio Team System 2008 puede hacerlo desde el menú Analizar -> 'Calcular métricas de código para la solución' y le dará un recuento de líneas de toda su solución (entre otras cosas g )
fuente
Para futuros lectores me gustaría recomendar la extensión DPack para Visual Studio 2010 .
Tiene una gran cantidad de utilidades incorporadas, incluido un contador de líneas que dice cuántas líneas están en blanco, código, etc.
fuente
Una solución simple es buscar en todos los archivos. Escriba "*" mientras usa comodines. Que coincidiría con todas las líneas. Al final de la ventana de resultados de búsqueda, debería ver una línea del tipo:
Matching lines: 563 Matching files: 17 Total files searched: 17
Por supuesto, esto no es muy bueno para proyectos grandes, ya que todas las líneas se combinan y se cargan en la memoria para mostrarlas en la ventana de resultados de búsqueda.
Referencia:
fuente
Podrías usar:
fuente
Prefiero OxyProject Metrics VS Addin.
fuente
Obviamente las herramientas son más fáciles, pero me siento genial haciendo esto en powershell :)
Este script encuentra todas las referencias .csproj en el archivo .sln y luego, dentro de cada archivo csproj, ubica los archivos incluidos para su compilación. Para cada archivo que se incluye para la compilación, crea un objeto con propiedades: Solución, Proyecto, Archivo, Líneas. Almacena todos estos objetos en una lista y luego agrupa y proyecta los datos según sea necesario.
fuente
Otra herramienta simple para VS2008 (código abierto): http://www.accendo.sk/Download/SourceStat.zip
fuente
Use la opción Menú-> Analizar -> Calcular métricas de código en Visual Studio 2010 Ultimate.
fuente
Puede usar Visual Studio Code Metrics PowerTool 10.0 . Es una utilidad de línea de comandos que calcula algunas métricas sobre el código administrado por usted (incluidas las líneas de código). Puede obtener un complemento VS 2010 que trae la herramienta a Visual Studio y lo hace tan rápido como seleccionar el elemento del menú y hacer clic en "Analizar solución".
fuente
De acuerdo con Ali Parr. El complemento WndTab Line Counter es una herramienta de este tipo. http://www.codeproject.com/KB/macros/linecount.aspx
También es una buena idea buscar desde el sitio de descarga para encontrar alguna herramienta relacionada. http://www.cnet.com/1770-5_1-0.html?query=code+counter&tag=srch
fuente
Aquí está el truco ... También cuenta el archivo Js.
http://www.spoiledtechie.com/post/2011/11/22/How-To-Count-Lines-of-Code-in-Visual-Studio.aspx
fuente
Puedes usar la herramienta gratuita SourceMonitor
Da muchas medidas: líneas de código, recuento de declaraciones, complejidad, profundidad de bloque
Tiene salidas gráficas a través de gráficos.
fuente
Puede usar el complemento Project Line Counter en Visual Studio 2010. Normalmente no funciona con Visual Studio 2010, pero sí con un útil archivo .reg desde aquí: http://www.onemanmmo.com/index. php? cmd = newsitem & comment = news.1.41.0
fuente
Se me ocurrió un script de PowerShell rápido y sucio para contar líneas en una estructura de carpetas. No es tan completo como algunas de las otras herramientas a las que se hace referencia en otras respuestas, pero creo que es lo suficientemente bueno como para proporcionar una comparación aproximada del tamaño de los archivos de código entre sí en un proyecto o solución.
El script se puede encontrar aquí:
https://gist.github.com/1674457
fuente
Prueba neptuner. También le ofrece cosas como espacios, pestañas, líneas de comentarios además de LoC. http://neptuner.googlecode.com/files/neptuner_0_30_windows.zip
fuente
En Visual Studio 2015, vaya al menú Analizar y seleccione "Calcular métricas de código".
fuente