É possível encontrar o número de linhas de código em uma solução inteira? Eu ouvi falar do MZ-Tools , mas existe um equivalente de código aberto?
800
É possível encontrar o número de linhas de código em uma solução inteira? Eu ouvi falar do MZ-Tools , mas existe um equivalente de código aberto?
Respostas:
O Visual Studio 2010 Ultimate possui este built-in:
fonte
Eu achei o PowerShell útil para isso. Eu considero LoC uma métrica bastante falsa de qualquer maneira, então não acredito que algo mais formal deva ser necessário.
Do diretório de uma solução pequena:
Isso contará as linhas não em branco em todos os arquivos .cs e .xaml da solução. Para um projeto maior, usei apenas uma lista de extensões diferente:
Por que usar um aplicativo inteiro quando uma única linha de comando o faz? :)
fonte
(dir -exclude *.g.cs -include *.cs,*.xaml -recurse | select-string .).Count
Eu usei Ctrl+ Shift+ F. Em seguida, coloque um
\n
na caixa de pesquisa e ative a caixa de expressões regulares. Então, nos resultados da busca, no final da tela estão o número de arquivos pesquisados e as linhas de código encontradas.Você pode usar
[^\n\s]\r\n
para pular linhas em branco e somente espaço (créditos para Zach nos comentários).fonte
Look at these file types:
menu suspenso abaixoenable regular expressions box
.[^\n\s]\r\n
pula linhas em branco, mesmo com espaços.Um contador de linha de código aberto para VS2005, 2003 e 2002 está disponível aqui:
http://www.wndtabs.com/
Também se discute a criação de uma linha de contagem de suplemento VS, completa com o código no Codeproject, aqui
http://www.codeproject.com/KB/macros/LineCounterAddin.aspx
Os Slick Edit Gadgets também têm um bom contador de linhas, aqui:
http://www.slickedit.com/products/slickedit
e o Microsoft Visual Studio Team System 2008 inclui um bom contador de linhas.
Apenas lembre-se:
fonte
Aqui está uma atualização para o Visual Studio 2012/2013/2015 para quem deseja fazer a opção "Localizar" (que eu acho mais fácil): Este RegEx encontrará todas as linhas não em branco com várias exclusões para fornecer os resultados mais precisos .
Digite o seguinte RegEx na caixa "Localizar". Certifique-se de selecionar a opção "Usar expressões regulares". Altere a opção de pesquisa para "Projeto atual" ou "Solução inteira", dependendo de suas necessidades. Agora selecione "Find All". Na parte inferior da janela Resultados da pesquisa , você verá "Linhas correspondentes", que são as linhas da contagem de códigos.
Este RegEx exclui os seguintes itens:
Comentários
Comentários de várias linhas (supondo que as linhas sejam comentadas corretamente com um * na frente de cada linha)
XML para Intellisense
Comentários em HTML:
Usando instruções:
Abertura de chaves:
Fechamento de chaves:
Nota: qualquer coisa entre os colchetes seria incluída na pesquisa, mas neste exemplo, apenas 4 linhas de código serão contadas, em vez de 18 linhas não em branco reais:
Eu criei isso para me fornecer uma contagem LOC muito mais precisa do que algumas opções anteriores e achei que eu compartilharia. Os chefes adoram a contagem do LOC, por isso fico preso por um tempo. Espero que outra pessoa possa achar isso útil, deixe-me saber se você tiver alguma dúvida ou precisar de ajuda para fazê-lo funcionar.
fonte
Encontrou esta dica: LOC with VS Localizar e substituir
Não é um plugin, se é isso que você está procurando.
fonte
cloc é uma excelente linha de comando, baseada em Perl e executável em Windows, que divide as linhas em branco, as linhas comentadas e as linhas de código fonte, agrupadas por formatos de arquivo.
Agora, ele não será executado especificamente em um arquivo de solução do VS, mas poderá ser repetido por meio de diretórios e você poderá configurar os filtros de nome de arquivo conforme desejar.
Aqui está o exemplo de saída de sua página da web:
A escala equivalente de terceira geração é uma estimativa aproximada de quanto código seria necessário em um idioma de terceira geração . Não é muito útil, mas interessante de qualquer maneira.
fonte
choco install cloc
e,cloc .
em seguida, em sua solução dir. Tarefa concluída!As respostas aqui estão um pouco desatualizadas, podem ser do período vs 2008. Como nas versões mais recentes do Visual Studio 2010/2012, esse recurso já está embutido. Portanto, não há razão para usar qualquer extensão ou ferramenta para isso.
Recurso para contar linhas de código - Calcular métricas. Com ele, você pode calcular suas métricas (LOC, índice de manutenção, índice ciclomático, profundidade de herança) para cada projeto ou solução.
Basta clicar com o botão direito do mouse na solução ou projeto no Solution Explorer,
e selecione "Calcular métricas"
Dados posteriores para análise e agregação podem ser importados para o Excel. Também no Excel, você pode filtrar as classes geradas ou outros ruídos de suas métricas. Essas métricas, incluindo as linhas de código LOC, podem ser coletadas também durante o processo de compilação e incluídas no relatório de compilação
fonte
As expressões regulares foram alteradas entre o VS2010 e 2012, portanto, a maioria das soluções de expressão regular aqui não funciona mais
Encontrará todas as linhas que não estão em branco, não são apenas um colchete ('{' ou '}') e não são apenas um #include ou outro pré-processador.
Use Ctrl- shift- fe verifique se as expressões regulares estão ativadas.
A expressão regular correspondente para o VS 2010 e anteriores é
fonte
No Visual Studio Team System 2008 você pode fazer a partir do menu Analisar -> 'Calcular Código Métricas para solução' e ele vai te dar uma contagem de linha de toda a sua solução de (entre outras coisas g )
fonte
Para futuros leitores, gostaria de aconselhar a extensão DPack para o Visual Studio 2010 .
Ele possui vários utilitários incorporados, incluindo um contador de linhas que indica quantas linhas estão em branco, código e etc.
fonte
Uma solução simples é procurar em todos os arquivos. Digite "*" enquanto estiver usando curingas. O que corresponderia a todas as linhas. No final da janela de resultados da pesquisa, você verá uma linha do tipo:
Matching lines: 563 Matching files: 17 Total files searched: 17
Obviamente, isso não é muito bom para projetos grandes, pois todas as linhas são usinadas e carregadas na memória para serem dispersas na janela de resultados da pesquisa.
Referência:
fonte
Você poderia usar:
fonte
Prefiro o OxyProject Metrics VS Addin .
fonte
Obviamente, as ferramentas são mais fáceis, mas eu me sinto bem fazendo isso no PowerShell :)
Esse script localiza todas as referências .csproj no arquivo .sln e, em cada arquivo csproj, localiza os arquivos incluídos para compilação. Para cada arquivo incluído para compilação, ele cria um objeto com propriedades: Solução, Projeto, Arquivo, Linhas. Ele armazena todos esses objetos em uma lista e, em seguida, agrupa e projeta os dados conforme necessário.
fonte
Outra ferramenta simples para o VS2008 (código aberto): http://www.accendo.sk/Download/SourceStat.zip
fonte
Use a opção Menu-> Analisar -> Calcular Métricas de Código no Visual Studio 2010 Ultimate.
fonte
Você pode usar as métricas de código do Visual Studio PowerTool 10.0 . É um utilitário de linha de comando que calcula algumas métricas no código gerenciado para você (incluindo linhas de código). Você pode obter um plug-in do VS 2010 que traz a ferramenta para o Visual Studio e a torna tão rápida quanto selecionar o item de menu e clicar em "Analisar Solução".
fonte
Concordo com Ali Parr. O complemento WndTab Line Counter é uma dessas ferramentas. http://www.codeproject.com/KB/macros/linecount.aspx
Também é uma boa ideia pesquisar no site de download para encontrar alguma ferramenta relacionada. http://www.cnet.com/1770-5_1-0.html?query=code+counter&tag=srch
fonte
Aqui está o truque. Também conta o arquivo Js.
http://www.spoiledtechie.com/post/2011/11/22/How-To-Count-Lines-of-Code-in-Visual-Studio.aspx
fonte
Você pode usar a ferramenta gratuita SourceMonitor
Dá várias medidas: Linhas de Código, Contagem de Declarações, Complexidade, Profundidade do Bloco
Possui saídas gráficas através de gráficos
fonte
Você pode usar o suplemento Contador de Linha do Projeto no Visual Studio 2010. Normalmente, ele não funciona com o Visual Studio 2010, mas com um arquivo .reg útil a partir daqui: http://www.onemanmmo.com/index. php? cmd = newsitem & comment = news.1.41.0
fonte
Eu vim com um script de PowerShell rápido e sujo para contar linhas em uma estrutura de pastas. Ele não é tão completo quanto algumas das outras ferramentas mencionadas em outras respostas, mas acho que é bom o suficiente para fornecer uma comparação aproximada do tamanho dos arquivos de código em relação ao outro em um projeto ou solução.
O script pode ser encontrado aqui:
https://gist.github.com/1674457
fonte
Tente neptuner. Também fornece itens como espaços, guias, linhas de comentários, além do LoC. http://neptuner.googlecode.com/files/neptuner_0_30_windows.zip
fonte
No Visual Studio 2015, vá para o menu Analisar e selecione "Calcular métricas de código".
fonte