Я использую ActionScript3 для разработки уровня доступа к данным для приложения, над которым работает другой разработчик в моей команде. Один из объектов, назовем его User
, дорого построить. У каждого пользователя есть уникальный идентификационный номер, поэтому я могу сказать, были ли они созданы ранее или нет, и все User
объекты хранятся в массиве где-то еще.
Я хочу иметь возможность ограничить его, чтобы можно было только один раз создать User
для каждого идентификатора. И.Е. каждый пользователь должен быть уникальным, а запросы на уже созданный User
должны получить предварительно созданный User
.
Если бы я использовал здравый, хорошо спроектированный язык, я бы просто сделал его закрытым конструктором и заставил бы все запросы объекта проходить через функцию, которая кэшировала вещи. Но flash не позволяет использовать частные конструкторы (только публичные и внутренние, ни один из которых не будет работать). Как мне этого добиться?