УДК 004.94

Обзор возможностей веб-фреймворка

Гринчар Николай Николаевич – доцент кафедры Информационных систем цифровой экономики Российского университета транспорта.

Бахтиарова Альбина Жарыпхабовна – студент Российского университета транспорта.

Масленникова Дарья Алексеевна – студент Российского университета транспорта.

Аннотация: В данной статье рассмотрено понятие веб-фреймворка Django, создание веб-приложения на его основе, а также его преимущества и недостатки. В статье были представлены конкретные шаги по созданию и настройке виртуальной среды с последующей установкой Django. Особое внимание уделено структуре Django и его четырем компонентам: моделям, представлениям, шаблонам и URL-маршрутам. Статья будет интересна людям, которые увлекаются высокими технологиями и веб-разработкой на Python.

Ключевые слова: фреймворк, веб-приложение, виртуальная среда, URL-маршрут.

Django - это полнофункциональный веб-фреймворк Python с открытым исходным кодом, который можно использовать для создания сложных веб-приложений. Django является одним из самых популярных фреймворков Python, что было подтверждено проведенным опросом JetBrains среди разработчиков [1].

Существует бесконечное множество фреймворков для веб-разработки, но у Django есть ряд преимуществ: он написан на Python, одном из самых читаемых и удобных для начинающих языков программирования, объем его возможностей, простой синтаксис. Помимо всего этого, также существует сообщество разработчиков Django, куда всегда можно обратиться при возникновении проблем и получить совет для их решения [2]. Более того, он отлично подходит для новичков в веб-разработке, поскольку у Django есть подробная документация по каждому аспекту [3]. Многие популярные веб-сайты написаны на Django такие, как Spotify, YouTube, DropBox, Pinterest [4].

Фреймворк основывается на четырех главных компонентах: моделях, представлениях, шаблонах и URL-маршрутах. Модели взаимодействуют с базой данных и достают из неё ту информацию, которую необходимо отобразить в браузере. Представления обрабатывают запрос и обращаются к модели, сообщая ей, какую информацию необходимо достать из базы данных. Шаблоны показывают, каким именно образом необходимо показать информацию, полученную из базы данных. URL-маршруты перенаправляют HTTP-запрос от браузера в представления.

Веб-сайт Django состоит из одного проекта, который разделен на отдельные приложения. Идея заключается в том, что каждое приложение обрабатывает автономную функцию, которую должен выполнять сайт. Есть несколько различных функций, которые необходимо выполнить, Например, управление пользователями: вход в систему, выход из системы, регистрация; лента изображений: загрузка, редактирование и отображение изображений; личные сообщения: личные сообщения между пользователями и уведомления. Каждый из них представляет собой отдельные части функциональности, поэтому, если бы это был сайт Django, то каждая часть функциональности должна быть отдельным приложением Django внутри одного проекта Django. Проект Django содержит некоторые конфигурации, применимые к проекту в целом, такие как настройки проекта, URL-адреса, общие шаблоны и статические файлы. Каждое приложение может иметь свою собственную базу данных и имеет свои собственные функции для управления тем, как данные отображаются пользователю в HTML-шаблонах. Каждое приложение также имеет свои собственные URL-адреса, а также собственные HTML-шаблоны и статические файлы, такие как JavaScript и CSS.

  1. Создание и запуск виртуальной среды

При создании проектов на Python рекомендуется работать в виртуальных средах, чтобы сохранить проект. Виртуальная среда - это автономное дерево каталогов, которое содержит зависимости, требуемые различными проектами, изолированными от существующих пакетов. Используя виртуальные среды Python, приложения могут запускаться в своей собственной "песочнице" изолированно от других приложений Python. Это позволяет иметь изолированное пространство на компьютере для различных проектов Python, гарантируя, что каждый из проектов может иметь свой собственный набор зависимостей и модулей, которые не будут мешать ни одному из других проектов [5]. 

  1. Установка Django в виртуальной среде

Чтобы установить Django в виртуальной среде, нужно выполнить команду: “pip install Django”. Это позволит установить последнюю версию Django в виртуальной среде.

  1. Настройка Проекта

В рабочей области нужно создать каталог с именем “mysite” и перейти в него. Команды для этого:

cd Desktop

mkdir mysite

cd mysite

Для создания проекта Django нужно запустить команду в оболочке: “django-admin startproject mysite”. Это сгенерирует структуру проекта с несколькими каталогами и скриптами Python.

  1. После этого необходимо создать специальные приложения, которые будут отвечать за определенные функциональные возможности. Это можно осуществить, перейдя во внешний каталог, где существует скрипт manage.py и запустить команду:

cd mysite

python manage.py startapp blog

  1. Открыв settings.py файл и перейдя в раздел установленные приложения, в котором должны быть некоторые уже установленные приложения, нужно добавить в INSTALLED_APPS ‘blog’. Таким образом, Django понимает, что создано новое приложение.
  2. С помощью команды “python manage.py migrate” применятся все неприменимые миграции к базе данных SQLite, которая поставляется вместе с установкой Django.
  3. Чтобы протестировать конфигурации, нужно запустить встроенный сервер разработки Django с помощью команды “python manage.py runserver”
  4. Открыв браузер и перейдя по адресу http://127.0.0.1:8000 /, можно проверить, прошло ли все успешно.

1

Рисунок 1. Успешный встроенного сервера разработки Django.

Создание всех перечисленных выше популярных веб-приложений на базе Python стало возможным благодаря преимуществам, которые Django предоставляет разработчикам. Прежде всего, Django был создан для того, чтобы помочь разработчикам быстро трансформировать идеи и концепции в рабочий код.

Помимо этого, дистрибутивный пакет Django включает в себя расширяемую систему аутентификации, интерфейс управления контентом, решение для генерации RSS-каналов и другие инструменты, которые помогают решать обычные задачи веб-разработки. Более того, фреймворк Django построен таким образом, чтобы оградить разработчиков от многих ошибок, связанных с безопасностью.

Данный фреймворк позволяет создавать высоконагруженные приложения и является гибким, когда дело доходит до масштабирования. Django подходит для создания широкого спектра веб-приложений, от самых простых до сложных, использующих искусственный интеллект, включая финтех-сервисы, платформы бронирования, порталы edtech, социальные сети и онлайн-газеты.

Несмотря на все преимущества, которые он предлагает, есть причины, по которым Django до сих пор не является основным фреймворком для многих программистов. Django не подходит для небольших проектов. Веб-фреймворк Django поставляется с большим количеством кода, который требует обработки и времени сервера [6]. 

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

Таким образом, использование Django сократит общее время веб-разработки при создании веб-приложений. Более того, Django - это переносимый фреймворк, его можно запускать на любой платформе, включая ПК, Mac, Windows, Linux и т.д. Кроссплатформенный характер этой платформы позволяет разработчикам поддерживать всю среду разработки и производства. Также у Django многочисленное сообщество, где всегда можно найти решение проблемы, с которой вы столкнулись. Для этого фреймворка доступно множество списков рассылки, блогов, документации, каналов Slack, встреч, семинаров и других онлайн-ресурсов. Одна из лучших особенностей Django заключается в том, что вы можете создавать приложение с более высокой скоростью и доставлять его без ущерба для безопасности приложения. Функции безопасности в этой платформе включены по умолчанию. Именно поэтому, Django - идеальный выбор для создания веб-приложений, особенно для тех, кто только начинает свой путь в веб-разработке.

Список литературы

  1. Python Developers Survey 2021 Results – [Электронный ресурс]. – Режим доступа: https://lp.jetbrains.com/python-developers-survey-2021.
  2. Django community – [Электронный ресурс]. – Режим доступа: https://www.djangoproject.com/community.
  3. Django documentation – [Электронный ресурс]. – Режим доступа: https://docs.djangoproject.com/en/4.1.
  4. 10 popular websites built with Django, 2022 – [Электронный ресурс]. – Режим доступа: https://djangostars.com/blog/10-popular-sites-made-on-django.
  5. Создание первого веб-приложения с помощью Django, 2022 – [Электронный ресурс]. – Режим доступа: https://www.internet-technologies.ru/articles/sozdanie-per-veb-prilozheniya-s-pomoschyu-django.html.
  6. Почему Вам стоит выбрать фреймворк Django для своего будущего проекта – [Электронный ресурс]. – Режим доступа: https://tproger.ru/articles/pochemu-vam-stoit-vybrat-frejmvork-django-dlja-svoego-sledujushhego-proekta.

Интересная статья? Поделись ей с другими: