У меня есть Java-приложение, отличное от MVC, которое я работаю над рефакторингом в MVC для дальнейшего сопровождения. Графический интерфейс приложения включает в себя произвольное количество строк, каждая из которых представлена JPanel, содержащей несколько элементов управления. Я реорганизовал логику для каждой строки в класс модели и настроил простой контроллер в соответствии с шаблоном, изложенным в этой статье центра Java-разработки . Я не хочу вставлять весь скелет MVC этого кода, но по сути он предполагает, что будет только один View и одна Model каждого класса вокруг, и что у каждой Model будут уникальные имена методов. Все работает нормально, пока есть только одна модель и один контроллер.
Проблема: у меня теперь есть n RowViews и n RowModels, все они добавлены в контроллер. Когда я обновляю любое текстовое поле в RowView, все RowModels обновляются. Я вижу модификацию контроллера для хранения пары хэшей, отображающих представление в модель и наоборот, но это, кажется, нарушает принцип тонких контроллеров. Я чувствую, что упускаю что-то очевидное здесь, в плане дизайна и стратегии. Есть мысли по решению этой проблемы?