В каком пакете должен быть помещен класс «Настройки»? - PullRequest
0 голосов
/ 26 марта 2010

Я нахожусь в процессе создания приложения, но обнаружил, что слишком легко создаю новые пакеты без учета структуры проекта.

Теперь я сначала пытаюсь переделать всю структуру проекта на бумаге. Я использую класс «Настройки» с открытыми свойствами, доступ к которым можно получить в качестве настроек для нескольких других классов в рамках проекта.

Теперь, поскольку этот класс «Настройки» применяется ко всему проекту, я не уверен, должен ли он быть упакован и, если да, в каком пакете он должен существовать? Или это должно быть в корне (пакет по умолчанию) с основным классом приложения?

Я думал о том, чтобы положить его в свой пакет утилит, но, опять же, я не думаю, что это действительно безумие. Любые стратегии, как определить такую ​​структуру пакета, например, для класса «Настройки»?

Ответы [ 2 ]

1 голос
/ 26 марта 2010

Использование пакета по умолчанию в любом случае не рекомендуется (насколько я знаю, в java это фактически применяется как предупреждение), даже для класса, содержащего main.

Кроме этого, я предпочитаю иметь пакет config, даже если это единственный класс там. Я не думаю, что он вписался бы в пакет utils.

0 голосов
/ 26 марта 2010

ИМХО, вы должны поместить его в отдельный низкоуровневый пакет, так как от него зависят многие другие классы, но это (предположительно) ни от чего не зависит. Так что определенно , а не следует поместить в один пакет с основным классом приложения. Он может быть в пакете utils или в отдельном пакете на том же уровне (например, config).

Под «низким уровнем» я просто подразумеваю «низкий уровень в иерархии зависимостей пакетов», где пакет A, который зависит от пакета B, выше, чем B. Таким образом, он не имеет прямого отношения к реальной иерархии пакетов. Смысл в том, чтобы избежать циклов зависимости между вашими пакетами, чтобы у вас был такой порядок между пакетами.

Кстати, вы не должны использовать корневой пакет в реальном приложении.

...