Прямо сейчас у меня есть оператор switch, который используется для создания объектов на основе строки. Существует три типа объектов, которые расширяют абстрактный общий объект. Я действительно должен был использовать фабричный образец, который я выясняю прямо сейчас. Моя проблема заключается в следующем: я ценю гибкость фабричного шаблона, но сейчас я храню потенциальные продукты в специальных словарях, посвященных их типу.
_type1[location] = ArrayOfType1s
_type2[location] = ArrayOfType2s
_type3[location] = ArrayOfType3s
Это работает, если у меня есть только три типа, но если я решу добавить больше с гибкостью заводского шаблона, тогда возникает проблема, как их хранить, так как мне придется каждый раз создавать специальный словарь Я добавляю один ...
Единственный ответ, который я могу придумать, - это вложить свои словари, которые звучат довольно медленно.
_factoryOutput[type] = type[location] = ArrayOfTypes
Это, вероятно, работоспособное решение, но кто-нибудь может предложить более чистое решение? Я работаю в AS3, но не стесняйтесь предлагать более общее решение.