티스토리 뷰

디버깅

[디버깅] 디버깅의 정의

이재원님 2018. 10. 23. 01:49


디버깅을 정의해보라고 하면 대부분 수정해야 할 부분을 찾는 것 이라고 생각한다.

하지만 이건 디버깅의 여러 목표 중 하나일 뿐이고, 더욱이 가장 중요한 목표도 아니다.

 

효과적인 디버깅의 단계는 아래와 같다.

 

  1. 소프트웨어가 왜 이상하게 작동하는지 알아낸다.
  2. 문제를 수정한다.
  3. 다른 곳이 깨지지 않게 한다.
  4. 코드의 전반적인 품질(가독성, 구조, 테스트 커버리지, 성능 등)을 유지하거나 향상시킨다.
  5. 같은 문제가 다른 부분에는 없는지 살펴보고, 재발 방지책을 마련한다.

 

이 중 첫 번째 항목이 가장 중요하고, 디버깅의 시작이 되는 부분임을 잊지 말자.

댓글