2013-12-05 4 views
1

Мой вопрос довольно прост, я не нашел прямого ответа на него.
Является избыточным кодом между двумя или более пакетами, чтобы обеспечить независимость от пакета, считающуюся хорошей или плохой практикой, например, у меня есть два пакета, один из которых выполняет загрузку и кеш, а другой - для чтения из сервера и кеша. в то время как кэшированные данные и механизм совершенно разные, но имеют некоторые общие классы/методы.Дизайн шаблонов пакета независимости

Должен ли я создать третий пакет, который содержит общедоступные ресурсы и разбить пакет в зависимости?
Или я продолжу с двумя пакетами и приведу к избыточному коду? Наконец, чтобы углубиться в дизайн и зависимость, я был бы признателен, если бы вы предложили мне хороший материал для чтения.

* Пожалуйста, обратите внимание: я пишу в Java, общий код не так много

+1

Трудно понять, что именно вы просите. Вообще говоря, код, который выполняет ту же работу, должен быть помещен в свою библиотеку и использован как можно больше. Гораздо лучше, если пакет B и пакет C зависят от пакета A, чем для B и C, чтобы зависеть друг от друга. Лучше всего, если вы можете поместить интерфейсы в A, чтобы вы могли изменять фактические классы, не нарушая B и C. – chrylis

+0

Спасибо за ваш ответ, можете ли вы предложить мне хороший материал для чтения? –

ответ

2

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

Конечно, если код идентичен, то выньте его в свою банку.

+0

Спасибо за ваш ответ, можете ли вы предложить мне хороший материал для чтения? –

Смежные вопросы