Как стать автором
Поиск
Написать публикацию
Обновить
34
0.1
Vladimir @vldmrmlkv

Пользователь

Отправить сообщение

От MCP до мультиагентов: 10 Open Source AI проектов на GitHub и почему они важны

Время на прочтение11 мин
Количество просмотров6.7K

Группа экспертов GitHub провела анализ популярных open-source AI проектов, созданных за последние 99 дней. В статье вы узнаете об этих проектах и почему они важны для индустрии AI.

Читать далее

Как улучшить тестируемость кода на примере Dependency Injection в Python

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров5.5K

В данной статьей вы узнаете о важности отделения операций ввода-вывода (т.е. сетевых запросов, обращений к базе данных и т.д.) от основной логики кода, особенностях использования Dependency Injection (внедрения зависимостей) для написания более тестируемого кода с примерами модульных тестов.

Примитивы синхронизации в Python Asyncio: Исчерпывающее руководство

Уровень сложностиСложный
Время на прочтение14 мин
Количество просмотров20K

При написании многопоточного приложения нужно помнить о возможности состояния гонки при использовании неатомарных операций. Даже простая задача по увеличению целого числа на единицу в конкурентной программе может вызвать ошибки, с трудом поддающиеся воспроизведению. Но при использовании asyncio мы всегда работаем в одном потоке, а значит можно не беспокоиться о гонках, правда? На самом деле не всё так просто...

Что было дальше?

Паттерн производитель-потребитель и очередь с приоритетом asyncio.PriorityQueue в Python

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров6.4K

В предыдущей статье вы могли узнать что такое очередь в целом и как работает FIFO-очередь asyncio.Queue. Давайте продолжим и посмотрим на примере библиотеки aiohttp как работают очереди с приоритетом asyncio.PriorityQueue.

Читать далее

10 лучших практик логирования в Python

Уровень сложностиПростой
Время на прочтение19 мин
Количество просмотров43K

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

В этой статье мы рассмотрим лучшие практики логирования в Python. Следуя им, вы сможете обеспечить информативность, практичность и масштабируемость генерируемых логов. Давайте начнём!

Читать далее

FIFO очередь asyncio в Python

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров8.7K

Очереди в Asyncio могут быть полезны для создания программ, в которых используются паттерны производитель-потребитель, где одна или несколько корутин производят элементы и помещают их в очередь, а одна или несколько корутин потребляют элементы и обрабатывают их из очереди.

В этой статье на примерах вы узнаете как работает асинхронная очередь asyncio.Queue.

Читать далее

8 и 1/2 способов проверки атрибутов экземпляров класса в Python

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров15K

Проверка типов и проверка значений обрабатываются в Python гибким и неявным образом. В Python начиная с Python 3 появился модуль typing, который обеспечивает поддержку подсказок типов. Но для проверки значений не существует единого способа проверки.

Один из сценариев, в котором нам нужна проверка значений — это инициализация экземпляра класса. На первом этапе мы хотим убедиться в правильности вводимых атрибутов, например, адрес электронной почты должен иметь правильный формат xxx@xx.com, возраст не должен быть отрицательным, фамилия не должна превышать 20 символов и т.д.

В этой статье я хочу продемонстрировать 7(с половиной - прим.пер.) вариантов проверки атрибутов класса с помощью встроенных модулей Python или сторонних библиотек. Интересно, какой вариант вы предпочитаете? Если вы знаете другие варианты, пишите в комментариях. Поехали.

Читать далее

Информация

В рейтинге
4 050-й
Откуда
Россия
Зарегистрирован
Активность

Специализация

Backend Developer, System Administration
Middle
Python
Linux
Git
Docker
Fastapi
CI/CD
OOP
SQL