Junior — Middle
Explique o que significa criar objetos que são imutáveis após a sua inicialização.
sobes.tech IA
Resposta da IA
A criação de objetos imutáveis, ou seja, que não mudam após a sua inicialização, significa que uma vez que o objeto é criado e os seus campos são definidos, o estado desse objeto não pode ser alterado. Tais objetos são chamados de imutáveis.
Em C#, isso é alcançado, por exemplo, com:
- declarar os campos como
readonly; - não ter setters nas propriedades (apenas getters);
- inicializar todos os dados através do construtor.
Vantagens de objetos imutáveis:
- Segurança em múltiplas threads sem sincronização adicional.
- Simplificação na compreensão do código, pois o estado do objeto não muda.
- Uso como chaves em coleções e caches.
Exemplo:
public class Person
{
public string Name { get; }
public int Age { get; }
public Person(string name, int age)
{
Name = name;
Age = age;
}
}
Após criar uma instância de Person, suas propriedades não podem ser alteradas.