Я работаю над школьным проектом, и задача - разработать инструмент управления проектами. Нам разрешено использовать любой шаблон дизайна, если мы сможем объяснить, насколько это хорошо в соответствии с принципами GRASP.MVC pattern, нет базы данных, где хранить объекты?
Я дам краткий обзор инструмента проекта:
- CRUD-функциональность для проектов
- CRUD-функциональность для задач (проект имеет задачи)
- CRUD-функциональность для пользователей (а пользователю присваивается задачам)
- простой GUI
мы решили пойти с MVC-шаблон, и мы не разрешается использовать базы данных. Мой вопрос: Где я должен хранить объекты?
Должен ли я делать это в контроллере? В настоящее время мы делаем это так:
public class ProjectController
{
private ArrayList<Project> projects;
public ProjectController(TaskController taskController)
{
projects = new ArrayList<Project>();
}
}
У меня есть чувство, что что-то не так с сохранением объектов в контроллере, но я не могу объяснить, почему. Кто-нибудь, кто может объяснить, что является лучшей практикой в соответствии с принципами GRASP?
EDIT: Спасибо, узнал от каждого, но может выбрать только один ответ.
Объекты хранятся в модели, вот что представляет собой '' '' '' '' '' '' '' '. Не обязательно сохранять данные, например. вы можете удерживать его в куче, но затем он теряется после выключения вашего приложения. – Smutje