최상의 답변
Python 프로그래밍을위한 정적 분석을 수행하는 여러 도구가 있습니다.
- Pylint → 오픈 소스 도구
- Kiuwan → 상용 도구
- Pyflakes 등
Pylint와 Kiuwan을 사용했습니다.
p>
Pylint는 다음을 찾을 수 있습니다.
- 라인 코드 길이 확인
- 변수 이름이 코딩 표준에 따라 올바른 형식인지 확인
- 가져온 모듈 사용 여부 확인
- 선언 된 인터페이스가 실제로 구현되었는지 확인
- 모듈 가져 오기 확인
Kiuwan 다음 규칙 세트를 지원할 수 있습니다.
- IP 주소 하드 코딩 방지
- 중복 된 코드
- 기본 변경 가능한 매개 변수 사용 방지
- 사용 방지 exec () 함수
- True 또는 False 할당 방지
- 등호 연산자를 포함하는 연결 비교 방지
- 너무 복잡한 함수 방지
- 파일 열기 저기 g with 문
- 사용되지 않는 모듈 사용 방지
- \_init\_ 메서드는 생성자가 될 수 없음
여러 도구를 확인하는 것이 더 나은 옵션이며 어떤 도구가 요구 사항에 완벽하게 맞는지 결정하십시오.
답변
저는 Vim 내부에서 코드 검사를 위해 pyflakes를 사용하며 매우 유용하다고 생각합니다. 그러나 여전히 pylint는 사전 커밋 코드 검사에 더 좋습니다. 커밋 할 수없는 오류와 코드 냄새이지만 커밋 할 수있는 경고의 두 가지 수준의 코드 검사가 있어야합니다. 파일 린트를 사용하여 구성 할 수 있고 다른 많은 것들을 구성 할 수 있습니다.
때때로 파일 린트가 너무 까다 롭다고 생각할 수 있습니다. 완벽하게 괜찮다고 생각하는 것에 대해 불평 할 수 있습니다. 그것에 대해 두 번 생각하십시오. 아주 자주, 몇 달 전에 지나치게 보수적 인 경고가 실제로 매우 좋은 조언이라는 것을 알게되었습니다.
그래서 제 대답은 pylint가 안정적이고 견고하며 훨씬 더 나은 코드를 알지 못한다는 것입니다. 분석기.