четверг, 13 мая 2010 г.

Django vs Drupal

Несколько аргументов, почему надо использовать Django вместо Drupal:

  • Drupal начинался как проект студентов, созданный для общения между корпусами колледжа.
  • Django начиналась при поддержке газеты Lawrence Journal-World. Она создавалась опытными разработчиками, которым требовалось сделать продукт ориентированный на быструю динамику в отрасли.
  • Django более низкоуровневый программный каркас (чем Drupal), который поощряет быстрое развитие и аккуратно написанный и организованный код.
  • В Django можно быстрее разрабатывать пользовательскую функциональность, чем Drupal
  • В Drupal данные вносятся кусками, называемыми "узлами", которые зачастую требуют от разработчика определенного контента. Контент должен определять содержимое, но не наоборот.
  • Django ORM позволяет использовать один и тот же код модели данных для работы с несколькими базами данных, такими как PostgreSQL, MySQL или Oracle (другие базы данных поддерживается сторонними библиотеками).
  • Drupal не позволяет надежно отделить логику запроса ORM от синтаксиса SQL.
  • Стандартный административный интерфейс Drupal не связан с управлением контентом, и позволяет не техническому персоналу менять (и ломать) функциональность сайта, если не заданы сложные права доступа.
  • Стандартный административный интерфейс Drupal смешен с пользовательским интерфейсом и содержит проблемы в бизнес логике.
  • Стандартный административный интерфейс Django предназначен для быстрого и легкого управления контентом, и позволяет разработчикам быстро создавать собственные административные интерфейсы и бизнес логику.
  • Политика безопасности Drupal требует от менеджеров сайта частых патчей и обновлений баз своего кода, что ведет к ошибкам и путанице в управлении сайтом.
  • В прошлых мажорных версиях было 16-релизов от Drupal-a, в сравнении с 7-ю Django. (прим. больше релизов - больше багов)
  • Поскольку Drupal хранит настройки и определения функций в базе данных, становится невероятно сложно управлять версиями ПО.
  • Django предоставляет комплексную систему прав доступа, которая растет с задачами сайта более плавно, чем Drupal.
  • Права доступа в Drupal зачастую избыточны для специализированных модулей, как правило разработчики упускают их из виду, что снижает безопасность.
  • Django четко отделяет фронт-енд от бек-енда, в отличии от Drupal. Django предоставляет язык шаблонов, подходящий для них, который легко и быстро может быть освоен разработчиками интерфейсов.
  • Django остается верной разделению бизнес-функций от данных, обработки и представления, использует MVC-архитектуру ПО.
Источник: http://nicksergeant.com/blog/django/drupal-v-django

Комментариев нет:

Отправить комментарий