deprecated_implement 진단: 구현(implement)이 더 이상 지원되지 않을 때
deprecated_implement 진단: 구현(implement)이 더 이상 지원되지 않을 때
Dart 분석기가 내보내는 진단에는 이름이 있어요. deprecated_implement는 @Deprecated.implement로 표시된 클래스를 클래스나 enum 선언의 implements 절에서 사용했을 때 분석기가 알려주는 진단이에요. 이 어노테이션은 그 클래스를 구현하는 능력이 폐기되었고 곧 제거될 것임을 뜻해요.
본문
설명
분석기는 @Deprecated.implement로 표시된 클래스를 클래스나 enum 선언의 implements 절에서 사용하면 이 진단을 만들어요. 이 어노테이션은 그 클래스를 구현(implement)하는 능력이 폐기되었고 곧 제거될 것임을 나타내요. 이 변경은 아마도 그 클래스를 interface, final, 또는 sealed로 표시하는 방식으로 강제될 가능성이 커요.
라이브러리 p가 @Deprecated.implement로 표시된 클래스를 정의한다고 해 볼게요.
@Deprecated.implement()
class C { }
그렇다면 p가 아닌 다른 어떤 라이브러리에서도 아래 코드는 이 진단이 나와요.
import 'package:p/p.dart';
class D implements C { }
흔한 해결 방법
Deprecation.implement 어노테이션에 적힌 안내가 있다면 그대로 따라가요. 그게 아니라면 implements 절을 제거해요.
class D { }