Какой шаблон архитектуры для настольного приложения я должен использовать? - PullRequest
0 голосов
/ 05 июля 2019

Я собираюсь разработать простое настольное приложение (базовый пакет с крошечной базой данных) на C #, я не знаю, какой шаблон использовать. В этом случае, какой из них будет правильным? Вот те шаблоны, которые я знаю:

  • MVC
  • MVP (представление представления модели)

Большое спасибо 100

Ответы [ 2 ]

0 голосов
/ 05 июля 2019

Нет правильного ответа для вас, потому что это будет зависеть от нескольких вещей, таких как длина приложения, ваш опыт в C #, тип настольного приложения, как указал другой пользователь.При этом я дам вам несколько советов.

  1. Прежде всего, MVC - это шаблон, ориентированный на веб, целью которого является улучшение сплоченности между классами и четкая ответственность за каждый из них.компоненты.Представление взаимодействует с контроллером через запросы, а контроллер взаимодействует с моделью, которая взаимодействует с хранилищем, чтобы в основном генерировать ответ для клиента.Итак, при условии, что вам нужно приложение для настольного компьютера, это бесполезно.

  2. Шаблон MVP такой же в значительной степени такой же (не совсем знаю, но я знаю, что он является производным от MVCшаблон), но докладчик - тот, кто взаимодействует с моделью через интерфейсы, возможно, это то, что вы хотите, поскольку он может работать с выигрышными формами.

Это мои мысли ошаблоны, которые вы только что упомянули, но я добавлю кое-что, с чем я работаю.

Я не знаю названия шаблона, но я обычно работаю со структурой слоя, похожей на mvc, но это не шаблон, как мне кажется (яс удовольствием знаю, если это его и, пожалуйста, укажите это в комментариях).Я работаю в основном с 4 слоями: презентация, данные, логика, модель.Ответственность заключается в том, что презентация - это та, которая взаимодействует с пользователем, когда пользователь отправляет входные данные и ему необходимо взаимодействовать с используемым вами репозиторием, вы делаете это через слой логики, в котором есть ваша бизнес-логика, а затемлогика данных, которая в основном является вашим хранилищем, она ничего не знает о том, как отображаются данные, она просто знает, что ей нужно выполнять операции CRUD в вашем хранилище.

Несмотря на то, что я сказал, выГоворя, что вам нужно простое приложение, скороговорки - это отличная работа для создания масштабируемых приложений, но для их настройки может потребоваться определенная работа, и, если вам нужно настроить их, вы пересекаете потребности, которые у вас есть для вашего приложения, тогда вы можете бытьтыкаешь не туда деревоИ в принципе у вас может быть все в 3 или 4 классах, не пытайтесь привести вашу программу в соответствие с шаблоном, они должны сделать нашу работу легче, а не сложнее.

0 голосов
/ 05 июля 2019

Не используйте шаблоны, если приложение действительно будет маленьким.Просто следуйте принципам SOLID, насколько это возможно.Не переигрывай!Шаблоны, такие как MVC, MVVM, MVP .. являются архитектурными шаблонами, которые имеют смысл в средних и крупных системах.

...