avoid_catches_without_on_clauses

avoid_catches_without_on_clauses

Dart 분석기(analyzer)가 만들어 내는 'avoid_catches_without_on_clauses' 진단에 대한 설명이에요. catch 절에 잡을 예외의 타입을 지정하는 on 절을 쓰라는 규칙이에요.

출처: avoid_catches_without_on_clauses

본문

설명

분석기는 catch 절에 잡을 예외 타입을 지정하는 on 절이 없으면 이 진단을 만들어 내요. 모든 예외를 잡으면 예상치 못한 오류가 가려질 수 있고 디버깅이 더 어려워져요.

예시

다음 코드는 예외 타입을 지정하는 on 절이 없는 catch 절을 쓰기 때문에 이 진단이 발생해요:

void f() {
  try {
    int.parse('?');
  } catch (e) {
    print(e);
  }
}

일반적인 수정 방법

잡을 예외 타입을 지정하는 on 절을 추가해요:

void f() {
  try {
    int.parse('?');
  } on FormatException catch (e) {
    print(e);
  }
}

더 알아보기