Руководство по архитектуре для веб-сайтов appengine?

Я создавал неподдерживаемые веб-сайты с помощью PHP, потому что на нем было очень легко делать что-то быстро и грязно. Я не хочу делать то же самое с Python / Django в appengine Google.

Есть ли какие-нибудь хорошие образцы архитектуры для создания веб-сайтов с использованием Django и appengine? (Например, где разместить бизнес-логику, где разместить логику доступа к данным, как четко разделить представления, как проводить модульное тестирование и т. Д.)


person Jim    schedule 27.01.2009    source источник


Ответы (3)


Django по своей природе усложняет размещение вещей в неправильных местах. Это одна из замечательных особенностей нового поколения фреймворков MVC, вы должны поработать над этим, чтобы создать клубок грязи.

person Matt Briggs    schedule 27.01.2009
comment
+1 Не невозможно запутать Django или Pylons, но это сложнее, чем большинство эквивалентов PHP. - person David; 28.01.2009

Если вы решите не использовать Django, ознакомьтесь с этими советами от команды Werkzeug. может быть интересно. Эта структура приложения берет лучшее от Django, но дает вам полную свободу в отношении фактического макета (нет необходимости иметь models.py, даже если у вас нет какой-либо модели в приложении ...).

person zgoda    schedule 09.02.2009

Как уже упоминалось, выбрав Django, вы уже сделали большой шаг в уходе от спагетти. Django предоставляет вам платформу MVC (Просмотр шаблона модели чтобы быть специфичным для Django). Таким образом, ваша работа теперь состоит в том, чтобы изучить и правильно следовать шаблону проектирования MVC, с которым вас направляет Django. Где вы разместите свою бизнес-логику, будет зависеть от вашего конкретного приложения и требований. В некоторых случаях некоторая бизнес-логика размещается ближе к данным в моделях, а в других случаях - в контроллере. Кроме того, GAE не требует Django, и в некоторых случаях достаточно фреймворка веб-приложений GAE.

person fuentesjr    schedule 28.01.2009