Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Где логичней использовать геттер 
V
    Опции темы
elvis79
Дата 28.7.2011, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 13.11.2008
Где: Украина, Ивано-Фр анковск

Репутация: нет
Всего: нет



Имеются 2 сущности: отделы и работники. Им отвечают соответсвующие таблици в БД. Работник и отдел связаны полем id_отдела:

Dept.java - сущность "отдел"
DeptManager.java - клас менежер для отдела (возвращает список всех отделов, отдел по id)
Personal.java - сущность "Работник"
PersonalManager.java - клас менежер для работника

Вопрос: в каком классе, по логике, должен находится геттер, который возвращает список работников определенного отдела? В менежере отдела или в менежере работника с передачей отдела в качестве параметра?

Прошу сильно не пинать, я новичок в java
PM MAIL WWW ICQ Jabber   Вверх
danilych
Дата 28.7.2011, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 2.2.2011

Репутация: 3
Всего: 3



Я думаю ответ кроется в фразе 
Цитата
 возвращает список работников определенного отдела 
, т.е. класс отдела содержит в себе список сотрудников. И я бы оставил 2 класса - Отдел и Сотрудник, т.к. и менеджер отдела, и менеджер для сотрудника это все тот же класс Сотрудник
PM MAIL   Вверх
elvis79
Дата 28.7.2011, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 13.11.2008
Где: Украина, Ивано-Фр анковск

Репутация: нет
Всего: нет



Dept

  id
  name

DeptManager

  public ArrayList<Personal> getPersonals() { <--тут
  ...
  }

Personal
  id
  id_dept
  name

PersonalManager

  public ArrayList<Personal> getPersonals(Dept dept) { <--или тут
  ...
  }

Вопрос чисто на грамотное проєктирование

Добавлено через 3 минуты и 25 секунд
Я тоже думаю, что в Отделе 
PM MAIL WWW ICQ Jabber   Вверх
danilych
Дата 28.7.2011, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 2.2.2011

Репутация: 3
Всего: 3



мое видение такое

Dept

  private Long id;
  private String name;
  private List<Personal> persons;
  private  Personal manager;
  
  public List<Personal> getPersonals(){...}

Personal
  private Long id;
  private Dept department;
  private String name;
  private Personal manager;

Ваши классы PersonalManager и DeptManager, по-моему, излишни
PM MAIL   Вверх
elvis79
Дата 29.7.2011, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 13.11.2008
Где: Украина, Ивано-Фр анковск

Репутация: нет
Всего: нет



Спасибо!
PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0424 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.