Я розумію ідею обсягу пакунків, і часом навіть думав, що цього хочу. Однак кожен раз, коли я серйозно збирався спробувати його використовувати, я виявив, що він не відповідає потребам, які я вважав, що це буде служити.
Моє головне питання завжди здається, що речі, якими я хочу обмежити сферу дії, ніколи не знаходяться в одному пакеті. У принципі вони можуть бути пов’язані між собою, але логічний поділ даних всередині програми містить їх як окремі дочірні пакети більшого пакету.
Наприклад, у мене може бути модель Місії, і я хочу використовувати лише інші інструменти Місії, як-от моя місія Сервіси, використовувати деякі методи. Однак я закінчую Missions.models і Missions.services як мої пакети, тому MissionModel і MissionService не є однаковою сферою пакету. Ніколи не здається, що існує ситуація, коли пакети належним чином містять речі, для яких я хотів би мати підвищені дозволи, не включаючи також численні речі, я не хочу мати цих дозволів; і рідко я відчуваю перевагу методу визначення обсягу пакунків, що виправдовує зміну моєї архітектури проекту, щоб розмістити все в одному пакеті. Часто або аспекти, або якась інверсія управління виявляються кращим підходом до будь-якої проблеми, яку я коротко розглянув, як визначати обсяг пакету.
Мені цікавіше, а це, як правило, вважається справжнім для всіх розробників Java, або це просто обробка моєї роботи. Чи багато використовується в реальному світі? Чи багато випадків, коли це вважається хорошою формою для використання, або це сприймається здебільшого як спадкова поведінка, яку рідко можна використовувати в сучасному розвитку?
Я нічого не запитую про те, чому приватна область пакету за замовчуванням, я запитую, коли його слід використовувати незалежно від значень за замовчуванням. Більшість дискусій щодо того, чому це за замовчуванням, насправді не вступають, коли обсяг пакету насправді корисний, замість цього просто аргументується, чому інші два широко використовувані області застосування не повинні бути за замовчуванням, тому пакет виграє в процесі усунення. Крім того, моє запитання стосується сучасного стану розвитку. Зокрема, чи розробили ми до того часу, коли інші інструменти та парадигми роблять обсяг пакету менш корисним, тоді він був ще тоді, коли рішення зробити його за замовчуванням мало сенс.