Как только вы захотите получить два или более миров, это потерпит неудачу.Скажем, когда ваш первый выпуск безудержно успешен и вы хотите добавить набор расширений «параллельная вселенная».
По моему опыту, 90% времени, когда маркетинг говорит: «О, не волнуйтесь, естьбудет только одно Приложение / Окно / База данных / Пользователь ", они не правы.
ДОБАВЛЕНО
Я бы также избегал использования истинного шаблона Singleton с World.getInstance () и т. д. Это дляредкие случаи, когда является существенным требованием , чтобы было только одно из чего-то.В вашем случае вы используете это как удобство, а не требование.
Не существует идеального исправления, YMMV, но я бы рассмотрел один статический метод, что-то вроде
World World.getWorld(String name)
, а затем вы вызываете реальные (нестатические) методы в Мире, которыевозвращаетсяДля V1 вашей программы позвольте null означать «мир по умолчанию».
Некоторые могут поместить этот метод в класс с именем WorldManager или, возможно, показывая мой возраст, более умное имя, такое как Amber.: -)