Создание классов по шаблону проектирования Фабрики - PullRequest
0 голосов
/ 11 января 2019

В шаблоне проектирования фабрики мы пишем логику для решения, какой класс должен быть загружен в классе фабрики. Предположим, у меня есть выбор из 100 классов, поэтому для всех 100 я должен написать условия в фабричном классе? Или есть какой-то другой способ?

Ответы [ 2 ]

0 голосов
/ 11 января 2019

В этом случае я бы создал аннотацию, описывающую условие, которому должен соответствовать каждый класс. Затем я использовал бы рефлексию, чтобы обнаружить все возможные продукты и сохранить определенный подфактор в HashMap с условием, используемым в качестве ключа.

0 голосов
/ 11 января 2019

Это не очень полезно, но я бы сказал, что это полностью зависит от вашего варианта использования. Может быть какая-то общая логика, по которой можно подобрать определенный класс.

Примечание: я бы посоветовал вам переосмыслить дизайн, если такая ситуация возникнет, и не исправить проблему, которую можно было бы избежать с самого начала. Использование рефлексии может помочь, если ваша логика связана с именем класса, но, опять же, это может быть избыточным решением проблемы.

...