Лінива ініціалізація

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Відкладена (лінива) ініціалізація (англ. Lazy initialization) — прийом в програмуванні, коли деяка ресурсномістка операція (створення об'єкта, обчислення значення) виконується безпосередньо перед тим, як буде використаний її результат. Таким чином, ініціалізація виконується "на вимогу", а не завчасно. Аналогічна ідея знаходить застосування в самих різних галузях: наприклад, компіляція «на льоту» і логістична концепція «Точно в строк».

Фабрика відкладеної ініціалізації[ред. | ред. код]

Шаблон проєктування «відкладена ініціалізація» часто використовують разом з шаблоном фабричного методу. Тут поєднані три ідеї:

  • використання фабричного методу для отримання екземпляра класу
  • збереження екземплярів у відображенні (Map), так що наступного разу можна запросити цей же екземпляр (Мультитон, Unit Of Work, тощо)
  • використання відкладеної ініціалізації для створення екземпляра об'єкта лише тоді, коли поступає запит

Приклади[ред. | ред. код]

C#[ред. | ред. код]

Java[ред. | ред. код]

JavaScript[ред. | ред. код]


Посилання[ред. | ред. код]