전체 솔루션에서 코드 줄 수를 찾을 수 있습니까? MZ-Tools에 대해 들었지만 오픈 소스에 해당하는 것이 있습니까?
답변
Visual Studio 2010 Ultimate에는 다음과 같은 기본 제공 기능이 있습니다.
분석 → 코드 메트릭 계산
답변
나는 이것에 유용한 powershell을 발견했다 . 어쨌든 LoC는 꽤 가짜 측정 기준이라고 생각하므로 더 공식적인 것이 필요하다고 생각하지 않습니다.
작은 솔루션의 디렉토리에서 :
PS C:\Path> (gci -include *.cs,*.xaml -recurse | select-string .).Count
8396
PS C:\Path>
모든 솔루션의 .cs 및 .xaml 파일에서 공백이 아닌 줄을 계산합니다. 더 큰 프로젝트의 경우 다른 확장 목록을 사용했습니다.
PS C:\Other> (gci -include *.cs,*.cpp,*.h,*.idl,*.asmx -recurse | select-string .).Count
909402
PS C:\Other>
단일 명령 줄에서 전체 앱을 사용하는 이유는 무엇입니까? 🙂
답변
나는 Ctrl+ Shift+를 사용했다 F. 그런 다음 \n
검색 창 에 a 를 입력하고 정규식 상자를 활성화합니다. 그런 다음 찾기 결과에서 화면 끝에 검색된 파일 수와 코드 줄이 있습니다.
[^\n\s]\r\n
공백 및 공백 전용 줄을 건너 뛰는 데 사용할 수 있습니다 (주석에서 Zach의 크레딧).
답변
VS2005, 2003 및 2002의 오픈 소스 라인 카운터는 다음에서 제공됩니다.
Codeproject의 코드로 완성 된 라인 카운팅 VS addin 생성에 대한 토론도 있습니다.
http://www.codeproject.com/KB/macros/LineCounterAddin.aspx
또한 매끄러운 편집 가제트에는 멋진 라인 카운터가 있습니다.
http://www.slickedit.com/products/slickedit
Microsoft Visual Studio Team System 2008에는 우수한 라인 카운터가 포함되어 있습니다.
그래도 기억하십시오 :
코드 라인별로 프로그래밍 진행률을 측정하는 것은 무게로 항공기 건물 진행률을 측정하는 것과 같습니다. 빌 게이츠
답변
다음은 “찾기”옵션을 수행하려는 사용자를위한 Visual Studio 2012/2013/2015에 대한 업데이트입니다.이 RegEx는 가장 정확한 결과를 제공하기 위해 여러 제외를 포함하여 모든 비 공백 행을 찾습니다. .
“찾기”상자에 다음 RegEx를 입력하십시오. “정규 표현식 사용”옵션을 선택하십시오. 필요에 따라 검색 옵션을 “현재 프로젝트”또는 “전체 솔루션”으로 변경하십시오. 이제 “모두 찾기”를 선택하십시오. 결과 찾기 창의 맨 아래 에 코드 개수의 줄인 “일치하는 줄”이 표시됩니다.
^(?!(\s*\*))(?!(\s*\-\-\>))(?!(\s*\<\!\-\-))(?!(\s*\n))(?!(\s*\*\/))(?!(\s*\/\*))(?!(\s*\/\/\/))(?!(\s*\/\/))(?!(\s*\}))(?!(\s*\{))(?!(\s(using))).*$
이 RegEx는 다음 항목을 제외합니다.
코멘트
// This is a comment
여러 줄 주석 (줄이 각 줄 앞에 *로 올바르게 주석 처리되었다고 가정)
/* I am a
* multi-line
* comment */
Intellisense 용 XML
/// <summary>
/// I'm a class description for Intellisense
/// </summary>
HTML 의견 :
<!-- I am a HTML Comment -->
문장 사용하기 :
using System;
using System.Web;
중괄호 열기 :
{
중괄호 닫기 :
}
참고 : 중괄호 사이의 모든 항목이 검색에 포함되지만이 예제에서는 18 개의 실제 비 공백 행 대신 4 행의 코드 만 계산됩니다.
public class Test
{
/// <summary>
/// Do Stuff
/// </summary>
public Test()
{
TestMe();
}
public void TestMe()
{
//Do Stuff Here
/* And
* Do
* Stuff
* Here */
}
}
이전 옵션보다 훨씬 정확한 LOC 수를 제공하기 위해 이것을 만들었고 공유 할 것이라고 생각했습니다. 상사는 LOC 수를 좋아하므로 잠시 동안 붙어 있습니다. 다른 사람이 도움이 될 수 있기를 바랍니다. 궁금한 점이 있거나 도움이 필요하면 알려주십시오.
답변
이 팁을 찾았습니다.
LOC with VS 찾기 및 바꾸기
당신이 찾고있는 것이지만 플러그인이 아닙니다.
답변
cloc 은 탁월한 명령 줄, Perl 기반의 Windows 실행 파일로, 파일 형식별로 그룹화 된 빈 줄, 주석 처리 된 줄 및 코드 소스 줄을 분류합니다.
이제는 VS 솔루션 파일에서 구체적으로 실행되지 않지만 디렉토리를 통해 재귀 할 수 있으며 파일 이름 필터를 적절하게 설정할 수 있습니다.
웹 페이지의 샘플 출력은 다음과 같습니다.
프롬프트> cloc perl-5.10.0.tar.gz 4076 개의 텍스트 파일. 3883 개의 고유 한 파일. 1521 파일이 무시되었습니다. http://cloc.sourceforge.net v 1.07 T = 10.0 초 (251.0 파일 / 초, 84566.5 라인 / 초) -------------------------------------------------- ----------------------------- 언어 파일 빈 주석 코드 스케일 3 세대 equiv -------------------------------------------------- ----------------------------- 펄 2052 110356 112521 309778 x 4.00 = 1239112.00 C 135 18718 22862 140483 x 0.77 = 108171.91 C / C ++ 헤더 147 7650 1209344042 x 1.00 = 44042.00 Bourne Shell 116 3402 5789 36882 x 3.81 = 140520.42 리스프 1684 2242 7515 x 1.25 = 9393.75 7 498473 2044 x 2.50 = 5110.00 만들기 C ++ 1031277 2000 x 1.51 = 3020.00 XML 26231 1972 x 1.90 = 3746.80 yacc 2128 97 1549 x 1.51 = 2338.99 YAML 200 489 x 0.90 = 440.10 DOS 배치 11 85 50322 x 0.63 = 202.86 HTML 1 98 98 x 1.90 = 186.20 -------------------------------------------------- ----------------------------- 합 : 2510 142085 156406547174 x 2.84 = 1556285.03 -------------------------------------------------- -----------------------------
3 세대 등가 척도는 3 세대 언어 에서 얼마나 많은 코드가 필요한지 대략적인 추정치입니다 . 별로 유용하지는 않지만 어쨌든 재미 있습니다.
