Posts tagged python

Как начать Django проект, который можно масштабировать

В статье создадим проект используя шаблонизатор cookiecutter-django, настроим статическую типизацию, добавим автоматическое форматирование кода с помощью black, создадим скрипт, который запускает тесты, проверяет правильность типов через линтер mypy и стиль кода через black. Напоследок добавим…

Read More

Celery + Channels = <3. Создаем реал-тайм приложение с бэкграунд тасками

В статье создадим веб-приложение, которое в бэкграунде делает запросы к API со случайными шутками каждые 15 секунд, затем отправляет шутку пользователю через WebSocket. Для реализации приложения будем использовать: django, celery и channels. Celery для бэкграунд…

Read More

Django + Vue. Реализуем вход через Google

Никто не любит при регистрации на сайте вводить каждый раз одно и то же: имя пользователя, электронную почту и т.д. Либо постоянно создавать и запоминать новые пароли. По этой причине, вход через сторонние приложения вроде…

Read More

Генераторы и корутины в Python

В предыдущей статье Итерируемые объекты, итераторы и генераторы в Python я уже затрагивал тему генераторов. В этой статье разберемся с тем, как работает оператор yield, и в чем разница между генераторами и корутинами. Будет проще понять эту статью,…

Read More

Итерируемые объекты, итераторы и генераторы в Python

В статье разберемся, что такое итерируемые объекты, итераторы и генераторы. Узнаем тайну работы цикла for. Реализуем шаблон проектирования “Итератор”. А затем удалим все и сделаем “по-нормальному”, используя генераторы. Что такое итерируемый объект и итератор Итератор –…

Read More

Где хранить бизнес логику в Django

Толстые модели (fat models), тонкие представления (thin views), тупые шаблоны (stupid templates) – один из распространенных подходов к структурированию Django приложений. Цель подхода – вынести бизнес логику из представлений и шаблонов, и поместить ее в модели. Очевидно, что…

Read More

SOLID: Принцип единственной обязанности

Хорошо спроектированная программа – программа, в которой: не страшно делать изменения; затраты на эти изменения – минимальны; легко тестировать Для того, чтобы писать такие программы, нужно практиковаться и знать о принципах проектирования хороших программ. Некоторые…

Read More