Je charge paresseusement tous mes membres. Je fais cela depuis un certain temps et j'ai simplement considéré que le chargement paresseux était une bonne chose au premier abord.
Disons que nous avons
public class SomeClass
{
public int anInt;
public SomeReferenceType member1;
public SomeClass()
{
//initialize members in constructor when needed (lazy load)
anInt = new int();
member1 = new SomeReferenceType();
}
}
Y a-t-il des inconvénients à faire les choses de cette manière ? Est-ce un bon modèle de chargement paresseux ? Cela a-t-il un sens de charger paresseusement un type de valeur (avec la RAM moderne, est-ce même important) ?
Après ce que j'ai appris de vos réponses, j'aimerais savoir s'il y a une différence entre ce qui précède et ceci...
public class SomeClass
{
public int anInt;
public SomeReferenceType member1 = new SomeReferenceType();
public SomeClass()
{
}
}