avoid_catching_errors 린트 규칙: Error 또는 그 구현 타입을 명시적으로 잡지 않기
avoid_catching_errors 린트 규칙: Error 또는 그 구현 타입을 명시적으로 잡지 않기
Error는 Exception과 달리 런타임 전에 분석하고 예방할 수 있는 문제예요. 그래서 런타임에 Error를 잡아야 할 일은 거의 없어요. 이 린트 규칙은 Error나 그 타입을 명시적으로 잡는 코드를 찾아내서 알려줘요.
본문
설명
Error나 그것을 구현하는 타입을 명시적으로 잡지 마세요.
Error는 Exception과 다르게, 런타임 전에 분석하고 예방할 수 있어요. 런타임에 오류를 잡아야 할 일은 거의 없어야 해요.
BAD:
try {
somethingRisky();
} on Error catch(e) {
doSomething(e);
}
GOOD:
try {
somethingRisky();
} on Exception catch(e) {
doSomething(e);
}
활성화 방법
avoid_catching_errors 규칙을 활성화하려면 analysis_options.yaml 파일의 linter > rules 아래에 규칙을 추가하면 돼요.
linter:
rules:
- avoid_catching_errors
대신 YAML 맵 문법을 사용해서 린트 규칙을 설정하고 있다면, linter > rules 아래에 avoid_catching_errors: true를 추가하면 돼요.
linter:
rules:
avoid_catching_errors: true