Является ли MVC хорошим шаблоном дизайна для приложения GAE? - PullRequest
0 голосов
/ 17 мая 2011

мое приложение GAE в настоящее время настроено со следующими именами файлов

  1. main.py (2 основные модели и логика для создания и обновления моделей)
  2. i18n.py (логика интерфейса пользователя, как просматривать объекты с i18n)
  3. reports.py (скрипт отчетности на основе cron)

Я думаю, что имена достаточно ясны, но я собираюсь следовать шаблону модель-представление-контроллер, поэтому переименование этих трех файлов в model.py view.py controller.py - это то, что я считаю вариантом следовать более стандартизированному соглашению , Согласны ли вы с тем, что этот тип модульности к соглашению MVC является разумным путем в этом случае, вам нужна дополнительная информация о том, что мое приложение : у меня есть много кода, который функционален для пользователя Код, который я считаю правильным для рефакторинга таким образом, чтобы следовать общепринятому шаблону проектирования, например, MVC, издатель-подписчик, фабрика и другие. В этом случае я думаю, что шаблон проектирования MVC является подходящим. Вы согласны или предлагаете другой код и обработку данных? Спасибо за любые комментарии и обсуждение.

1 Ответ

2 голосов
/ 17 мая 2011

Вы не понимаете MVC. Модель, Вид, Контроллер состоит из трех частей.

Модель - содержит бизнес-логику. Умеет читать / писать в базу данных. Вид - Содержит логику дисплея. Умеет извлекать данные из модели и отображать их пользователю. Контроллер - понимает жесты пользователя, загружает / находит правильную модель и вид и сообщает им, что делать.

(В веб-среде представление должно распаковывать данные из POST, а модель должна проверять их).

У вас есть M и C в main.py и, вероятно, V в i18n.py и main.py (сложно сказать). Отчеты cron-run являются внешними по отношению к MVC.

Простое переименование файлов ничего не даст, но запутает любого другого сопровождающего.

Если вы предлагаете внести существенные изменения в свой код без испытательного костюма, чтобы защитить вас от ошибок, то я должен указать, что такое действие не является разумным.

...