Índice:
Definição - O que significa Mutator?
Um mutador, no contexto de C #, é um método, com um nível público de acessibilidade, usado para modificar e controlar o valor de uma variável membro privada de uma classe. O mutador é usado para atribuir um novo valor ao campo privado de um tipo. Ele forma uma ferramenta para implementar o encapsulamento, controlando apenas o acesso aos valores internos do campo que devem ser modificados.
Os benefícios do uso de um mutador incluem:
- Impede que o usuário acesse diretamente os dados privados de uma instância de objeto e permite o acesso somente por meio de métodos públicos para impedir a corrupção de dados.
- Oferece flexibilidade na modificação da representação interna dos campos de um objeto que representa o estado interno sem interromper a interface usada pelos clientes do objeto.
- Capacidade de incluir lógica de processamento adicional, como validação de um conjunto de valores, acionamento de eventos etc. durante a modificação do campo no mutador.
- Fornece a sincronização necessária para cenários de multithreading.
- Inclui uma disposição para substituir o mutador declarado em uma classe base pelo código na classe derivada.
Techopedia explica Mutator
Um mutador geralmente é fornecido com um acessador que retorna o valor da variável de membro. Para membros de dados imutáveis, o mutador não deve ser fornecido.
Por exemplo, StudentData pode ser uma classe que armazena os detalhes de um aluno, como nome, endereço, nota, etc. Pode haver um método público, SetGrade, na classe. StudentData é o mutador para atualizar o objeto StudentData a partir do código que usa o objeto.
Enquanto um mutador é implementado em C ++ por um método público explícito para modificar um campo privado, o C # introduz "propriedades" como um novo recurso que implementa um mutador para modificar valores de campo e um acessador para buscar o campo. Cada propriedade é representada no código do idioma intermediário comum com um par de métodos prefixados com "get _" (acessador) e "set _" (mutator) sob o capô. Eles são chamados internamente pelo Common Language Runtime (CLR). Isso simplifica o código e às vezes permite o desempenho de operações matemáticas.
O mutador não é frequentemente usado em objetos, onde o comportamento do objeto é considerado e não como ele é executado.