Go 팀이 만든 모듈식 정적 분석 프레임워크: analysis 패키지
Go Analysis Framework: modular static analysis by go team
golang.org/x/tools/go/analysis 패키지는 모듈식 정적 분석을 위한 인터페이스를 정의합니다. 분석기는 한 번에 하나의 패키지를 검사하지만, 낮은 수준의 패키지에서 정보를 저장하고 높은 수준의 패키지를 검사할 때 사용할 수 있습니다. 이는 컴파일러의 별도 컴파일과 유사합니다. 이 프레임워크는 vet, IDE, 빌드 시스템 등 다양한 드라이버 프로그램에서 분석기를 쉽게 통합하고 재사용할 수 있게 해줍니다. 핵심 API는 Analyzer와 Pass 유형이며, Facts를 통해 패키지 간 정보를 공유합니다. 이 문서는 분석기 작성, 테스트, 실행 방법을 설명합니다.
모듈식 분석은 한 번에 하나의 패키지를 검사하지만, 낮은 수준의 패키지에서 정보를 저장하고 더 높은 수준의 패키지를 검사할 때 사용할 수 있습니다. 이는 툴체인에서의 별도 컴파일과 유사합니다.