본문 바로가기

개발/Java

[Java] 유효성 검사와 예외 처리의 차이

자바 팀 프로젝트를 진행하면서 유효성 검사와 예외 처리의 개념을 약간 혼동하고 있는 것 같길래 정리해보았다.

 

 

예외처리

 

예외 처리는 프로그램 실행 중 발생할 수 있는 예기치 않은 상황 또는 오류에 대비하는 메커니즘이다.

 

예외는 일반적으로 실행 시간(runtime)에 발생하며, 프로그램의 정상적인 흐름을 방해하거나 중단시킬 수 있다. 예외는 try-catch나 예외를 던지고 (throw) 처리하는 메커니즘을 사용하여 처리된다. 예외 상황의 예로는 파일을 읽으려고 할 때 파일이 존재하지 않는다거나, 네트워크 연결이 끊겼을 때 등이 있다.

 

 

 

유효성 검사

 

유효성 검사는 사용자 입력이나 외부 데이터의 유효성을 검증하는 과정이다. 이는 보통 데이터가 프로그램에 전달되기 전에 수행된다. 주요 목적은 프로그램이 유효하지 않은 데이터로 인해 예기치 않은 결과를 생성하는 것을 방지하는 것이다. 유효성 검사는 데이터의 형식, 범위, 무결성 등을 확인하고, 필요한 경우 오류를 발견하고 사용자에게 알리는 역할을 한다.

 

이번 팀 프로젝트에서 진행했던 유효성 검사의 한 가지 예로는 과목의 번호를 입력받을 때 유효성 검사를 통해 입력값이 숫자인지 확인하고, 존재하는 과목 범위 내에서만 입력되도록 제한했다. 이번 프로젝트에서 유효성 검사할 게 많았어서 유효성 검사를 하는 메서드들을 따로 모아서 클래스로 분리하는 게 좋을 것 같다는 생각이 들었다.

 

 

 

결론

 

예외 처리는 프로그램 실행 중 예기치 않은 오류에 대처하는 메커니즘으로, 프로그램의 안정성을 유지하는데 중요한 역할을 하는 반면에 유효성 검사는 데이터의 유효성을 검증하여 프로그램이 정확하고 안전하게 동작하도록 보장해준다.