디버깅은 모든 소프트웨어에서 소스 코드의 오류나 버그를 찾아서 수정하는 과정을 말하며, 소프트웨어가 예상대로 작동하지 안흘 경우 원인을 파악하기 위해 코드를 분석할 때 주로 사용한다.
구문 오류
의미론적 오류
논리 오류
런타임 오류
코틀린 문법 오류로 오타 및 미리 정의되지 않은 구문을 사용할 때 발생하는 버그이다. 이는 육안으로도 확인이 가능한데 Android Studio 코드 편집 화면에서 빨간줄로 표시되고, 대부분 컴파일 과정에서 빌드 에러가 발생한다.
Build Output 창에서 에러 발생 위치를 확인할 뒤, 수정하면 된다.
컴파일도 정상이고 앱도 정상적으로 실행되지만, 앱 구동 중에 발생하는 에러이다. 이는 앱 구종 중 메모리 부족, 배여릐 잘못된 주소값 할당이나 객체의 생성자가 실행되지 않았는데 객체를 사용하려고 하거나 특히 특정 뷰를 사용할 때 이에 맞는 id를 지정해주어야 하지 못한 경우 등 굉장히 다양한 원인이 있다.
이 에러가 발생하면 앱이 계속 중단된다는 창이 뜨면서 앱이 강제로 종료되는걸 볼 수 있다. Runtime error 발생 시 logcat을 확인하면 문제가 되는 코드를 확인하고 이를 수정하면 된다.
소스 코드컴파일도 정상적이고, 런타임상 에러도 발생하지 않지만 개발자의 의도와는 다르게 동작하는 에러다. 이는 굉장히 까다로우면서도 흔하게 발생하는 에러 종류 중 하나이다.