unnecessary_ getters_ setters
Saiba mais sobre a regra de lint unnecessary_getters_setters.
Evite encapsular campos em getters e setters só por "segurança".
Detalhes
#Segundo o Effective Dart:
EVITE encapsular campos em getters e setters só para ficar "seguro".
Em Java e C#, é comum esconder todos os campos atrás de getters e setters (ou propriedades, no C#), mesmo quando a implementação apenas repassa o valor ao campo. Assim, se um dia for preciso fazer mais trabalho nesses membros, isso pode ser feito sem tocar nos pontos de chamada. Isso acontece porque, em Java, chamar um método getter é diferente de acessar um campo, e, em C#, acessar uma propriedade não é binariamente compatível com acessar um campo bruto.
O Dart não tem essa limitação. Campos e getters/setters são completamente indistinguíveis. Você pode expor um campo em uma classe e, depois, encapsulá-lo em um getter e um setter sem precisar tocar em nenhum código que usa esse campo.
RUIM:
class Box {
var _contents;
get contents => _contents;
set contents(value) {
_contents = value;
}
}
BOM:
class Box {
var contents;
}
Ativar
#
Para ativar a regra unnecessary_getters_setters, adicione unnecessary_getters_setters
em
linter > rules no seu arquivo analysis_options.yaml:
linter:
rules:
- unnecessary_getters_setters
Se você usa a sintaxe de mapa YAML para configurar as regras de lint,
adicione unnecessary_getters_setters: true em linter > rules:
linter:
rules:
unnecessary_getters_setters: true
Salvo indicação em contrário, a documentação neste site reflete Dart 3.13.7. Relatar um problema.
Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.