В комментарии ОП пишет:
Итак, программист должен решить, нужно ли лениво инициализироваться или инициализироваться заранее. Это может быть очень субъективно, но не могли бы вы сообщить мне о любых лучших практиках, применяемых в подобных ситуациях.
Да, решение принимает программист (или системный интегратор).
На самом деле нет никаких правил «лучшей практики» для принятия решения. Подумайте об этом так:
Если вы объявите компонент как лениво инициализированный, когда его всегда нужно будет создавать, вы, возможно, замедлите процесс запуска.
Если вы объявите bean-компонент как нетерпеливо инициализированный, когда это не всегда необходимо, вы замедлите процесс запуска и сможете использовать больше памяти. В худшем случае создание ненужного компонента может даже вызвать сбой запуска.
Короче говоря, вам нужно понять ваше приложение.