Какова реальная цель общего оператора регистрации? Я написал много строк кода и не нашел необходимости в стандартных операторах регистрации. Но я не знаю твоей ситуации, поэтому постараюсь не судить. Я по-прежнему утверждаю, что они принадлежат файлу конфигурации или свойств, так что их можно изменять / интернационализировать, не требуя редактирования кода, плюс получить преимущества замены свойств путем использования соответствующих структур. Классы констант разрушают ОО-код, вызывая неестественную статическую зависимость между каждым классом в системе и классом констант
ал много сообщений на этом сайте относительно использования констант.
Вопрос: Когда я должен использовать Enums для констант, а не для использования классов или интерфейсов.
Я вижу 2 ключевые ситуации, на которые я обращаюсь.
1. Глобальные константы, используемые в приложениях несколькими проектами.Пример:
Общие строки регистрацииСсылки на контейнер, такие как ссылка на отображение базы данных, используемая в EAR WebSphere2. Специфичные для объекта константыПример:
Ставки заработной платы сотрудника за объект сотрудникаИз всего, что я прочитал, это то, о чем я думаю, и что я думаю о нем.
Для ситуации 1: Подход к проектированию: используйте финальный класс и статический импорт.
Видно здесь:Какая польза от констант интерфейса?
Для ситуации 2: Подход к проектированию: примените использование Enums для представления этих констант как объекта.
Дополнительные моменты для запоминания:
Если константная строка принадлежит классу и вам нужно только сохранить строковое значение в классе, который его используетНе используйте интерфейс для ситуации 1. Как упомянуто в ссылке выше как постоянный интерфейс Anti-pattern. ,Заранее спасибо за мысли и мнения.