Уже есть довольно много сообщений о Singleton-Pattern, но я хотел бы начать еще одну по этой теме, так как я хотел бы знать, будет ли Factory-Pattern правильным подходом для удаления этого «антипаттерна».
Раньше я довольно часто использовал синглтон, как и мои коллеги, так как он очень прост в использовании. Например, Eclipse IDE или лучше ее рабочая среда также интенсивно используют синглтоны. Это произошло из-за некоторых сообщений о E4 (следующей большой версии Eclipse), которые заставили меня переосмыслить синглтон.
Суть в том, что из-за этих синглтонов зависимости в Eclipse 3.x сильно связаны.
Предположим, я хочу полностью избавиться от всех синглтонов и вместо этого использовать фабрики.
Мои мысли были следующими:
- скрыть сложность
- меньше сцепления
- Я контролирую, сколько экземпляров создается (просто сохраните ссылку в частном поле фабрики)
- имитируйте фабрику для тестирования (с внедрением зависимостей), когда она находится за интерфейсом
- В некоторых случаях фабрики могут сделать более одного синглтона устаревшим (в зависимости от бизнес-логики / состава компонентов)
Имеет ли это смысл? Если нет, пожалуйста, объясните, почему вы так думаете. Также приветствуется альтернативное решение.
Спасибо
Марк