avoid_classes_with_only_static_members
Avoid defining a class that contains only static members.
This rule is available as of Dart 2.0.0.
Details
From Effective Dart:
AVOID defining a class that contains only static members.
Creating classes with the sole purpose of providing utility or otherwise static methods is discouraged. Dart allows functions to exist outside of classes for this very reason.
BAD:
class DateUtils {
static DateTime mostRecent(List<DateTime> dates) {
return dates.reduce((a, b) => a.isAfter(b) ? a : b);
}
}
class _Favorites {
static const mammal = 'weasel';
}
GOOD:
DateTime mostRecent(List<DateTime> dates) {
return dates.reduce((a, b) => a.isAfter(b) ? a : b);
}
const _favoriteMammal = 'weasel';
Usage
To enable the avoid_classes_with_only_static_members
rule,
add avoid_classes_with_only_static_members
under linter > rules in your
analysis_options.yaml
file:
linter:
rules:
- avoid_classes_with_only_static_members