vb.net에 대한 정적 코드 분석기를 작성하여 회사 표준 코딩 지침을 준수하는지 확인하고 싶습니다. 내가 어디에서 시작해야하는지 조언 해주세요..net에 대한 정적 코드 분석기 작성 방법
답변
FXCop는 StyleCop 스타일을 (분명) 코딩을위한 좋은 코딩 문제/실수에 대한 좋은 시작이지만, 두 작품 중 어느 경우에 당신은 당신은 파서를 직접 작성 할 수 있습니다 또는에서 VBCodeProvider 클래스를 사용합니다. Net Framework
정적 코드 분석기를 작성하는 대신 FxCop :을 사용하고 사용자 요구에 맞게 사용자 지정 FxCop 규칙을 작성하는 것이 좋습니다. 그것은 당신에게 많은 시간을 절약 할 것입니다. http://www.binarycoder.net/fxcop/
FxCop으로 시작하십시오. 거기서 시도하고있는 것을 할 수 없다면 NStatic이나 NDepend와 같은 것을 시도해보십시오.
나는 Mono의 Gendarme를 사용하는 것이 좋습니다. 그것은 규칙이 많이 내장 된 매우 훌륭한 도구입니다. 또한 멋진 HTML 보고서를 생성합니다.
가장 좋은 옵션의 FxCop 또는 StyleCop을 사용하고 필요한 경우 사용자 정의 규칙을 작성한다.
FxCop을 사용하십시오.이 프로젝트는 개인적으로 수행하려는 프로젝트가 아닙니다. 관련된 구문 분석/어휘 규칙과 가능한 catch는 미친 것입니다. 내가 상상할 수있는 유일한 방법은 표현의 극단적 인 양 때문에 Lisp을 사용하는 것이지만, FxCop을 사용하는 것이 가장 좋습니다. 일부 (독단적?) 이유에 대한 사용자 지정 사내 도구를 작성해야하는 경우
, 나는 기본적인 규칙 검사를 수행하는 리스프 프로그램을 작성하는 것이 좋습니다 것입니다. AI 연구자들이 소프트웨어의 구문 분석 기능과 관련하여 다루는 경계를 말하는 것입니다.
가능한 뻔한 범인을 찾으려면 그냥 Lisp을 사용하거나, 비 호환 코드의 관점에서 잡는 것이 끝나면 바로 잡기에 Lisp을 사용하고 간단한 인간의 눈 스캔을 받아야합니다. Lisp을 사용하여 파서를 작성하는 경우 매크로를 남용하는 것이 좋습니다.
mroe 아키텍처 통찰력이 필요한 경우 NDepend를 사용하십시오. 이 도구는 나를 놀라게하지 않습니다. 그것은 FxCop보다 더 많은 것을 할 수 있습니다. 그래도 상업용이지만 무료 평가판이 있습니다.
저는 포스터 중 하나가 상당히 어려울 것 같지만, Lisp보다는 F #으로 시작할 것입니다. Microsoft가 제 3자를 위해했던 것처럼 윈도우 드라이버 분석 도구 :
http://arstechnica.com/journals/microsoft.ars/2005/11/10/1796
F 번호를 공유 리스프의 표현력 (좋아, 거의)과 모든 것을 쉽게 만들 것이다, 단지 VB.NET 같은 CLR에서 작동합니다.