Scavenger
런타임 데드코드 분석 도구 오픈소스
Features
- 네이버가 공개한 오픈소스. 네이버내 80여개 서비스에서 사용중
- 데드코드 : 실행되지 않는 코드 / 실행되더라도 어플리케이션 동작에 영향을 미치지 않는 코드
- 데드코드의 문제점
- 시스템을 이해/유지보수 하기 어렵게 만듦
- 성능/보안에 악영향을 줌
- 컴파일/테스트 속도를 지연시켜 전체 개발 속도를 저하
- 디버깅 또는 로그를 추가하지 않고 메서드 호출이 확인 가능
- 메서드 호출 기록을 수집하여 이를 시각화해 유저에게 보여줌
- Java agent 방식으로 손쉽게 사용 가능
- Python은 현재 베타이고, 그외 다양한 언어 지원 예정
See also
Favorite site
- [https://deview.kr/data/deview/session/attach/%5B225%5D%EB%9F%B0%ED%83%80%EC%9E%84+%EB%8D%B0%EB%93%9C%EC%BD%94%EB%93%9C+%EB%B6%84%EC%84%9D+Scavenger+-+%EB%8B%B9%EC%8B%A0%EC%9D%98+%EC%BD%94%EB%93%9C%EB%8A%94+%EC%83%9D%EA%B0%81%EB%B3%B4%EB%8B%A4+%EB%A7%8E%EC%9D%B4+%EC%A3%BD%EC%96%B4%EC%9E%88%EB%8B%A4..pdf [225]런타임+데드코드+분석+Scavenger+-+당신의+코드는+생각보다+많이+죽어있다..pdf]
- Github - naver/scavenger: a runtime dead code analysis tool