unnecessary_getters_setters
単に「安全のため」にフィールドをゲッターとセッターでラップするのは避けてください。
このルールはDart 2.0から利用可能です。
このルールにはクイックフィックスが用意されています。
詳細
#避けるべき フィールドをゲッターとセッターでラップするのは単に「安全のため」です。
JavaやC#では、実装が単にフィールドに転送される場合でも、すべてのフィールドをゲッターとセッター(またはC#のプロパティ)で隠すのが一般的です。このようにすれば、これらのメンバーでより多くの作業が必要になった場合でも、呼び出し箇所を変更する必要はありません。これは、Javaではゲッターメソッドの呼び出しとフィールドへのアクセスが異なり、C#ではプロパティへのアクセスと生のフィールドへのアクセスがバイナリ互換性を持たないためです。
Dartにはこの制限がありません。フィールドとゲッター/セッターは完全に区別できません。クラスでフィールドを公開し、後でゲッターとセッターでラップしても、そのフィールドを使用するコードを一切変更する必要はありません。
悪い例
class Box {
var _contents;
get contents => _contents;
set contents(value) {
_contents = value;
}
}
良い例
class Box {
var contents;
}
使用方法
#unnecessary_getters_setters
ルールを有効にするには、analysis_options.yaml
ファイルのlinter > rulesの下にunnecessary_getters_setters
を追加します。
linter:
rules:
- unnecessary_getters_setters
特に記載がない限り、このサイトのドキュメントはDart 3.5.3を反映しています。ページの最終更新日:2024年7月3日。 ソースを表示 または 問題を報告する。