Почему Django

Почему Django

Джанго создавался авторами для решения их конкретных задач — для создания новостных порталов. Вы можете себе представить объём задач, которые должен уметь выполнять фреймворк, на базе которого типичный новостной сайт построен: тут и работа с множеством пользователей (с множествами запросов), и обработка больших массивов данных, и забота об информационной безопасности, наконец. Не стоит забывать и о главной задаче любого фреймворка — об ускорении процесса разработки. Так вот, Django все эти задачи и каждую в отдельности выполняет "на отлично"!

Django ускоряет процесс разработки

Джанго ускоряет процесс разработки за счёт хорошо проработанной архитектуры, налаженных процессов наращивания функциональности, а также за счёт генерации кода (scaffolding). Вместе с фреймворком поставляется CLI-утилита, которая умеет генерировать модули и целые пакеты, готовые к встраиванию в систему — все нужные модули сразу создаются в нужном количестве, вам остаётся только записать в них логику.

Так как Django создавался для разработки так называемых контентных сайтов (content sites), немаловажной частью фреймворка является встроенный интерфейс администратора (в народе — "админка"). Оный позволяет создавать/изменять/удалять различные сущности, хранящиеся в базе данных, разграничивать права доступа к сущностям между различными группами пользователей, управлять составом этих самых пользователей, и делать всё это через гибко настраиваемый Web-интерфейс. Который вам даже не придётся реализовывать! Для многих именно "админка" Django является ключевым фактором при выборе инструмента для нового проекта, существуют даже проекты, весь пользовательский интерфейс которых фактически является стилизованным интерфейсом администратора!

Django — быстрый

Для любого Web-приложения важна скорость работы сервера, и особенно важно не терять скорость при росте количества пользователей. У Django и здесь всё хорошо: фреймворк позволяет гибко масштабировать приложение: выносить и расширять слой хранения данных (БД), применять кэширование (тоже потенциально выносимое на внешние сервера), хранить сессии пользователей таким образом, чтобы можно было запустить несколько backend-серверов и разделить нагрузку между ними.

В последнее время Django движется в сторону асинхронности, что тоже идёт на пользу скорости обработки запросов и повышает эффективность использования ресурсов "железа".

Django — безопасный

Строить безопасные Web-приложения сложно. Видов атак за десятилетия существования Web было придумано множество. Непросто даже помнить перечень наиболее распространённых уязвимостей. Фреймворки и здесь приходят на помощь разработчику: проработанный с точки зрения безопасности авторами фреймворка "скелет" делает достаточно безопасными все приложения, созданные на его основе! И если авторы фреймворка работают быстро, а его пользователи не забывают устанавливать обновления, то безопасность может долго оставаться на высоком уровне.

Авторы Django — как раз из тех людей, кто всерьёз думает о безопасности своего продукта. Django "из коробки" содержит средства защиты от наиболее распространённых атак, безопасно хранит данные пользователей, не позволяет злоумышленнику производить разного рода инъекции SQL и HTML с целью получения доступа к конфиденциальным данным. Всё это подключается к любому приложению в пару строк кода и позволяет спать спокойнее.

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

Ссылки

Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Javascript, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →