C# - 디버그(Debug)와 릴리즈(Release)의 차이점

 

디버그(Debug)

  • 완전히 기호화된 디버그 정보 사용하여 컴파일
  • 코드 실행 중에 디버그 정보를 수집하고 출력할 수 있음
    • 코드가 제대로 작동하지 않을 때 디버깅을 수행하기 위해 사용
    • 즉, 개발 중에 코드 디버깅(오류를 찾아내고 수정하는 작업)을 수행하기 위함
  • 최적화되지 않음
    • 소스 코드와 생성된 명령 간의 관계가 복잡해지므로 디버깅이 복잡해지기 때문
    • 즉, 릴리즈 모드보다 더 많은 메모리를 사용하며, 실행 파일 크기가 커서 실행 속도가 느림

릴리즈(Release)

  • 기호화된 디버그 정보가 없음
  • 완전히 최적화 됨
    • 디버그 모드보다 실행 파일 크기가 더 작고 실행 속도가 빠름
  • 최종 사용자가 사용하는 프로그램으로 배포할 때 사용

참고

Microsoft - Visual Studio 2022 - 디버그 및 릴리즈 구성 설정