Я баловаться с рамками дизайна MVP, и я в настоящее время мое решение установить следующим образом:Структура Model-View-Presenter: в каком проекте должны работать интерфейсы?
проекта: МОДЕЛЬ Содержит: Бетонный класс объектов, DataRetrieval класс, интерфейс IDataRetrieval
Проект: ВЕДУЩИЙ Содержит: Presenter класс, интерфейс IView
Проект: VIEW содержит: класс, класс программы
Я пересматриваю это решение, когда я могу, но теперь я Ĉ не помню, почему у меня есть интерфейсы, распределенные так, как они есть. Это не кажется правильным. Я пробовал следующее:
- Переместить интерфейсы в соответствующий проект для классов, которые реализовать их.
- Переместите оба интерфейса в класс презентатора.
Создание любой из этих изменений будет требовать немного работы, так что я просто подумал, что либо ответ лучше, чем другие (или, возможно, и очень, очень неправильно :))
Если это имеет значение , он разработан на C#.
Я хотел бы услышать ваше мнение!
Энди
Там нет ничего плохого в том, как вы описали свой ток раскладка. Размещение интерфейсов View с классами презентатора позволяет избежать циклической зависимости между сборщиками презентаций и представлений. Это очень распространенный подход к структуре проекта в MVP. –