Как стать автором
Обновить

Причины выбора Django для разработки сайта

Время на прочтение2 мин
Количество просмотров27K
Меня часто спрашивают, почему именно Django стоит использовать для написания сайтов? Почему не ASP.NET, Ruby on Rails, Grails и т.п.? Ниже я кратко опишу свое мнение, и причины, его сформировавшие. Но хочу сразу сказать, что это не сравнительный анализ фреймворков, и я не ставил перед собой цель что-то кому-то доказывать. Это просто перечисление преимуществ и мои мысли о них.

  • Использование Python в качестве языка программирования. Может это не самый идеальный и быстрый язык программирования, однако он достаточно прост с синтаксической точки зрения, что автоматом дает низкий порог вхождения. Ну и в довесок мы имеем всю его мощь метапрограммирования, обширную библиотеку классов, хорошую документацию и достаточно компактный и интуитивно понятный синтаксис.
  • Великолепная документация. Более качественной документации я не встречал в своей работе — множество примеров, объяснений, и самое главное — открытый исходный код, который очень хорошо написан.
  • Встроенный ORM (Object-relational mapper). Конечно, есть более гибкие и мощные библиотеки, обеспечивающие проецирование реляционных данных в объекты, но свои задачи Django ORM решает. Самое главное, что в нем мне нравится — в абсолютном большинстве случаев совершенно не требуется использование SQL-синтаксиса в выражениях, что автоматом снижает риск появления SQL-injection уязвимости.
  • Автоматически генерируемая админка. Это одна из уникальных фич Django, у которой практически нет аналогов. Помимо того, что данная функциональность позволяет значительно сократить время на написание нужного админского интерфейса, она еще и дает возможность клиентам сразу начать работать с сайтом еще на начальных этапах его разработки! Фактически, достаточно набросать нужные модели, и можно сразу показывать сайт клиенту, и уже интерактивно с ним обсуждать бизнес-логику, не отвлекаясь на дизайн.
  • Поддержка MTV (Model-Template-View). Данный паттерн проектирования очень близок к классическому MVC, и самое главное, что он позволяет — это хорошо отделять бизнес-логику от дизайна. Причем, несмотря на то, что многие возмущаются небогатством функциональных возможностей шаблонов Django, я наоборот считаю этот «недостаток» плюсом — программист имеет меньше соблазна залепить всю логику в шаблоны, чтобы потом разбираться со спагетти-проектом.
  • Высокая скорость работы. Несмотря на то, что Python не блещет скоростью, в целом Django работает достаточно быстро. Он может выдерживать высокую нагрузку, плюс имеет встроенные возможности кэширования и распределения нагрузки. Причем для того, чтобы писать на нем очень мощные сайты, не нужно иметь особо высокую квалификацию, не нужно быть гуру, и штудировать кучу форумов и других ресурсов. В довесок хочу привести ссылку на мою статью Django speed, stability and security.

Ну и собственно, вы сами можете составить представление об этом замечательном фреймворке, потратив всего пару часов на туториал.
Теги:
Хабы:
Всего голосов 82: ↑65 и ↓17+48
Комментарии293

Публикации

Истории

Работа

Python разработчик
132 вакансии

Ближайшие события

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
19 сентября
CDI Conf 2024
Москва
20 – 22 сентября
BCI Hack Moscow
Москва
24 сентября
Конференция Fin.Bot 2024
МоскваОнлайн
24 сентября
Astra DevConf 2024
МоскваОнлайн
25 сентября
Конференция Yandex Scale 2024
МоскваОнлайн
28 – 29 сентября
Конференция E-CODE
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн