Есть довольно много причин, по которым язык программирования Python весьма известен. Его любят крупные предприятия, разработчики и ученые во всем мире. Если взять корпоративную разработку, машинное обучение или еще что-нибудь вроде этого, то везде окажется множество приложений на Python. Этот язык привлекает пользователей гибкостью, простотой понимания, несложной реализацией и обилием библиотек, а также своими фреймворками, которые сразу же полюбились разработчикам.
Наш любимый Python
Открытый исходный код — величайшее достоинство Python, а также причина, по которой сообщество этого языка так велико. Cвой вклад в повышение популярности Python вносят разработчики, исследователи и множество других людей. Они же помогают развивать Python Django.
Python определенно прошел большой путь с тех пор, как Гвидо Ван Россум впервые его представил в 1990-х годах. В процессе своего развития он претерпел значительные изменения. Были исправлены имевшиеся ошибки, а кроме того внесены коррективы в сам язык. Эти перемены обеспечили разработчикам более высокую производительность и гибкость любимого инструмента.
В начале 2019 года Python был признан самым используемым языком программирования в мире. В этой номинации он обогнал Java и JavaScript. Это произошло благодаря широчайшему применению языка Python в различных сложных технологиях вроде машинного обучения.
Django 3.0
Была еще одна причина, по которой Python попал в заголовки газет. В марте 2019 года Гвидо Ван Россум ясно дал понять, что Python Software Foundation больше не будет выпускать какие-либо обновления безопасности для данной версии языка. И в конце прошлого года Python 2 официально ушел на пенсию.
Необходимость экстренного перехода на Python 3 до конца года повергла многие организации в панику. Но у компаний, перешедших на новую версию, был повод для радости: выход совершенно новой версии Django.
Итак, есть новая версия Django 3.0, наделавшая много шума благодаря исправлению ошибок и некоторым замечательным новым функциям.
Разработчики, знакомые с этим фреймворком, знают, что Django — это основанный на Python опенсорсный веб-фреймворк для серверных веб-приложений. С момента своего выхода в 2005 году Django привлек внимание многих людей, а также некоторых известных организаций. Среди них — NASA, Instagram, Spotify, Pinterest и Mozilla.
Согласно недавнему ежегодному опросу разработчиков Stack Overflow, Django занял шестую позицию в списке самых популярных веб-фреймворков. В опросе приняли участие 90 000 разработчиков. Из них 62,1% проголосовали за Django, предпочтя его всем остальным веб-фреймворкам.
Что в нем нового?
Поскольку фреймворк Django 3 уже стал фаворитом у разработчиков, давайте рассмотрим все новые функции, которые мы получили с его выходом.
Поддержка MariaDB
MariaDB — одна из самых популярных баз данных, написанная создателями MySQL. Ее популярность связана с тем, что это полноценная замена SQL, помогающая превращать данные в структурированную информацию для широкого круга приложений. Django 3.0 поддерживает MariaDB версии 10.2 или выше.
Возможность работы с Python Async
Python Async позволяет программам, особенно сетевым приложениям, работать плавно и эффективно. Но с async связана одна проблема: для его использования приложения должны быть соответствующим образом переписаны. Поскольку Django 3.0 работает только с Python 3.6 и более поздними версиями, разработчикам будет гораздо проще работать с функциями асинхронного программирования.
Возможности асинхронного программирования в Django представлены в виде поддержки запуска приложений, отвечающих стандарту Asynchronous Server Gateway (ASGI, расширение стандарта WSGI). Благодаря этому Django предоставляет стандартный интерфейс между веб-серверами, приложениями и фреймворками Python с поддержкой async.
Пользовательские перечисления для Field.choices
В Django 3 стали доступными пользовательские перечисления для Field.choices
. Новые типы перечислений включают Text Choices, Integer Choices и Choices. Хотя для соответствующих полей предусмотрены Text Choices и Integer Choices, класс Choices позволяет определить совместимое перечисление для других стандартных типов данных.
Упрощенные выражения
Еще одно замечательное обновление в Django 3.0 — это быстрый вывод BooleanField
. В предыдущих версиях они сначала должны были быть аннотированы, а затем отфильтрованы по аннотации. А в Django 3.0 их можно напрямую использовать в запросах типа QuerySet
.
PostgreSQL 9.5 и выше
Последняя версия Django поддерживает PostgreSQL версии 9.5 и выше. Новый класс ExclusionConstraint
позволяет добавлять ограничения в PostgreSQL.
Другие новинки
Django 3.0 вышел со множеством новых функций, а некоторые старые функции были деприцированы.
- Функции
smart_text()
,force_text()
вместе с их производными, такими какsmart_str()
иforce_srt()
, были деприцированы в новой версии. - API-интерфейсы, более не использующиеся в Python 3, были удалены. К ним относятся API для совместимости с Python 2. Наряду с этим была удалена поддержка pywatchman ниже версии 1.2.0 и sqlparse ниже версии 0.2.2.
- В Django 3.0 больше не поддерживаются многие приложения. К ним относятся Oracle 12.4, PostgreSQL 9.4, PostGIS 2.1, SpatiaLite 4.1 и 4.2, а также GDAL 1.11 и GEOS 3.4.
- В
django.contrib.admin
добавлена поддержка атрибутовadmin_order_field
, которые находятся вModelAdmin.list_display
. - Библиотека JQuery обновлена с версии 3.3.1 до 3.4.1.
Выводы
С появлением последнего обновления Django продолжает сохранять свою актуальность. Как и любой другой фреймворк, он находится в процессе эволюции. Устаревшие функции удаляются, им на смену приходят новые, которые можно использовать в будущих приложениях.
Текущая версия Django 3.0 поддерживает только Python 3.6 и старше.
Таким образом, если вы все еще сидите на Python 2, релиз Django 3.0 дает вам еще один стимул перейти на Python 3 и тем самым ускорить разработку ваших приложений.