дизайн упаковки и класса в Java и доступность - PullRequest
1 голос
/ 06 мая 2011

Я работаю в команде, мы решили разделить группы на группы, чтобы каждая группа доставляла файл JAR, который запускался в разных JVM.При определении «класса A» в моей группе я обнаружил, что другие группы будут иметь доступ только к некоторым свойствам и установщикам, во время выполнения объекты типа A хранятся в кеше и извлекаются остальной частью команды.Для обеспечения необходимой детализации я решил создать два jar-файла:

A1.jar, который должен использоваться остальной частью команды и будет включать класс A, который будет храниться и извлекаться из кэша.

A2.jar, который будет содержать как класс B, полученный из A, так и мой бизнес-код, этот jar не будет использоваться остальной командой, но он будет принят некоторыми интерфейсами SOA.

Я переместил сеттеры и свойства, недоступные остальной части команды, в класс B. Но у меня есть некоторые сомнения.

Что если какой-то группе нужен другой доступ к классу A (скажем, они могут устанавливать некоторые свойства другимне могу)?

Существует ли какой-либо шаблон, запрещающий доступ к некоторым свойствам в классе на основе пакета пользователя класса, за исключением защищенных, общедоступных, закрытых ключевых слов?

pd: by groupя имею в виду некоторую группу людей из команды разработчиков, которая предоставляет некоторый jar-файл, состав групп отражает логический бизнес, когда я говорю «доступ», я имею в виду статический доступ к коду через ключевые слова private / protected / public / package,Я имею в виду любой динамический доступ, связанный со свойствами среды выполнения.

Пожалуйста, извините за мой английский

1 Ответ

1 голос
/ 06 мая 2011

Звучит как странное использование наследования и модулей.Вместо этого я бы опубликовал API, который является интерфейсом или набором интерфейсов и, возможно, фабрикой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...