Відкладена (лінива) ініціалізація () — прийом в програмуванні, коли деяка ресурсномістка операція (створення об'єкта, обчислення значення) виконується безпосередньо перед тим, як буде використаний її результат. Таким чином, ініціалізація виконується "на вимогу", а не завчасно. Аналогічна ідея знаходить застосування в самих різних галузях: наприклад, компіляція «на льоту» і логістична концепція «Точно в строк».
Фабрика відкладеної ініціалізації
Шаблон проєктування «відкладена ініціалізація» часто використовують разом з шаблоном фабричного методу. Тут поєднані три ідеї: використання фабричного методу для отримання екземпляра класу збереження екземплярів у відображенні (Map), так що наступного разу можна запросити цей же екземпляр (Мультитон, Unit Of Work, тощо) використання відкладеної ініціалізації для створення екземпляра об'єкта лише тоді, коли поступає запит
Приклади
C#
Java
JavaScript
Посилання Article «Java Tip 67: Lazy instantiation — Balancing performance and resource usage» by Philip Bishop and Nigel Warren Java code examples Use Lazy Initialization to Conserve Resources Description from the Portland Pattern Repository Lazy Initialization of Application Server Services Lazy Inheritance in JavaScript Lazy Inheritance in C#