跳至主要內容

avoid_classes_with_only_static_members

穩定

避免定義僅包含靜態成員的類別。

詳細資訊

#

出自Effective Dart

避免定義僅包含靜態成員的類別。

不鼓勵建立僅為了提供工具程式或靜態方法的類別。Dart 允許函式存在於類別之外,正是基於這個原因。

不良範例

dart
class DateUtils {
  static DateTime mostRecent(List<DateTime> dates) {
    return dates.reduce((a, b) => a.isAfter(b) ? a : b);
  }
}

class _Favorites {
  static const mammal = 'weasel';
}

良好範例

dart
DateTime mostRecent(List<DateTime> dates) {
  return dates.reduce((a, b) => a.isAfter(b) ? a : b);
}

const _favoriteMammal = 'weasel';

啟用

#

若要啟用 avoid_classes_with_only_static_members 規則,請在您的 analysis_options.yaml 檔案中,於 linter > rules 下方新增 avoid_classes_with_only_static_members

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_classes_with_only_static_members

如果您改用 YAML 對應語法來設定 linter 規則,請在 linter > rules 下方新增 avoid_classes_with_only_static_members: true

analysis_options.yaml
yaml
linter:
  rules:
    avoid_classes_with_only_static_members: true