Skip to content

[제안] 런타임 데드 코드 분석을 위한 Scavenger 도입 #89

Description

@EunjiShin

💁‍♀️ 제안 사항

더 이상 사용하지 않는 데드 코드를 관리할때 사용할 수 있도록 Scavenger를 도입해요.

👀 제안 이유

  • 레거시 코드, 사용하지 않는 코드 등 Dead Code를 보다 안전하고 편리하게 관리하기 위해 제안해요.
    • 특정 메서드를 삭제하거나 수정하려면, 해당 메서드를 참조하는 곳이 없는지 파악하는 과정이 필수에요.
    • 지금이야 코드가 그렇게 많지 않지만, 점점 늘어난다면 개발자가 하나하나 살펴보는데 한계가 있을거에요.
      • 테스트 코드로 체크할 수도 있겠으나, 현재 SPOT은 모든 메서드에 필수로 테스트를 작성하진 않기 때문에 완전하지 않아요.
    • 그렇다고 이런 데드 코드들을 그대로 남겨두면?
      • 이 코드들이 언제 어디서 갑자기 참조될지 알 수 없어 위험하고, 클래스 혹은 메서드들이 많아져 파악하기도 어렵고, 심하면 성능 저하가 발생할 수도 있어요.
  • Scavenger를 사용하면, 이런 데드 코드를 시스템에서 GUI로 파악할 수 있어서 불편함을 해소할 수 있어요.
  • 그리고 사실 제가 써보고 싶어요 (소근소근) Deview2023때 직관했는데, 재밌어 보이더라고요ㅎ

✅ 참고 사항

Metadata

Metadata

Assignees

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions