Junior — Middle
Vysvetlite, čo znamená vytváranie objektov, ktoré sú nezmeniteľné po ich inicializácii.
sobes.tech AI
Odpoveď od AI
Vytváranie objektov, ktoré sú nezmeniteľné po ich inicializácii, znamená, že akonáhle je objekt vytvorený a jeho polia sú nastavené, stav tohto objektu nemôže byť zmenený. Takéto objekty sa nazývajú immutable (nezmeniteľné).
V C# je to dosiahnute napríklad pomocou:
- deklarácie polí ako
readonly; - absencie setterov v vlastnostiach (len getter);
- inicializácie všetkých dát cez konštruktor.
Výhody immutable objektov:
- bezpečnosť v multithread prostredí bez dodatočnej synchronizácie.
- zjednodušenie porozumenia kódu, pretože stav objektu sa nemení.
- použitie ako kľúče v kolekciách a cache.
Príklad:
public class Person
{
public string Name { get; }
public int Age { get; }
public Person(string name, int age)
{
Name = name;
Age = age;
}
}
Po vytvorení inštancie Person jej vlastnosti nie je možné zmeniť.