private IMyType myProperty;
public IMyType MyProperty
{
get
{
if(myProperty==null)
{
myProperty = AppKernel.Get
Как называется эта техника (создание экземпляра объекта в случае, если ссылка на объект пустая)? Является ли это каким-то паттерном? Во многих примерах вижу такой подход. Интересно, имеет ли он какое-то название?
Ответ
Это называется ленивая инициализация. Как правило такой подход используется, когда объект слишком громоздкий, и инициализировать все его поля сразу - отнимет время. С таким подходом поля будут инициализироваться во время первого обращения к ним. Это применяется в работе с базами данных, в частности, в ORM, например. Без крайней необходимости делать ленивую инициализацию не стоит.
Комментариев нет:
Отправить комментарий