Что такое Spring Framework, эквивалентный FactoryModuleBuilder
, @AssistedInject
и @Assisted
в Google Guice? Другими словами, какой рекомендуемый подход использует Spring для создания объектов factory, методы которых принимают аргументы, которые должны предоставить приложение (а не контейнер)?
Метод Spring static factory не совпадает с FactoryModuleBuilder
. FactoryModuleBuilder
создает модуль Guice, который генерирует "фабрики", которые реализуют Factory шаблон метода. В отличие от статического factory метода Spring, методы этих factory объектов являются методами экземпляра, а не статическими методами. Проблема со статическим методом factory заключается в том, что он является статическим и не реализует интерфейс, поэтому его нельзя заменить альтернативной реализацией factory. Однако различные экземпляры FactoryModuleBuilder
могут создавать разные фабрики, реализующие один и тот же интерфейс.