Python [Дмитрий Читалов] [Udemy] Создаем мессенджер на базе Python asyncio (2022)

  • Автор темы Moderator
  • Дата начала
Moderator

Moderator

Модератор
Регистрация
17.07.2019
Сообщения
70 665
Реакции
209 162
Онлайн
23дн 6ч 3м 52с
Автор: Дмитрий Читалов
Название: [Udemy] Создаем мессенджер на базе Python asyncio (2022)
скачать бесплатно [Дмитрий Читалов] [Udemy] Создаем мессенджер на базе Python asyncio (2022)


Вы научитесь создавать асинхронные проекты средствами Python asyncio.
Чему вы научитесь:

1. Возможности библиотеки Python asyncio
2. Возможности библиотеки PyQt
3. Особенности реализации клиент-серверных приложений
4. Возможности библиотеки SQLAlchemy

Асинхронный механизм работы приложений все чаще реализуется разработчиками. Он позволяет, не дожидаясь завершения выполнения одних задач, создавать и запускать новые задачи. Благодаря такому подходу обеспечивается быстродействие приложения, что является важным критерием при разработке программ. В Python нам доступна замечательная библиотека asyncio. Несмотря, на то, что она сравнительно новая, ее возможности уже широки применяются Python-разработчиками. Мы сможем применить ее в рамках работы над клиент-серверным приложением. Это будет мессенджер с графическим интерфейсом и базой данных. Конечно мы не сможем за один курс реализовать полноценный «боевой» мессенджер. Мы создадим упрощенную копию известных мессенджеров, но с необходимым базовым функционалом и привычным оконным интерфейсом.

Помимо изучения непосредственно библиотеки Python asyncio мы уделим большое внимание работе с ORM-библиотекой SQLAlchemy, через которую настроим взаимодействие с базой данных. Также мы поработаем с библиотекой PyQt для создания привлекательной графической оболочки мессенджера. Работа над созданием мессенджера будет проходить в несколько этапов, начиная с освоения самой библиотеки Python asyncio и создания шаблона проекта, заканчивая сложной логикой взаимодействия серверного и клиентского приложения в части регистрации клиентов, выбора ими контактов для общения, удаления контактов, отправки сообщений. Мы научимся запускать одновременно несколько программ для отладки, а также создадим специальный запускаемый файл для тестирования работу приложения. Мы обязательно столкнемся со множеством ошибок, но успешно их преодолеем и получим благодаря ошибкам ценнейший опыт.

Содержание:
Модуль 1 - Введение в асинхронное программирование на Python

  • Введение в курс
  • Различия синхронного и асинхронного подходов
  • Где применяется асинхронный подход
  • Как связаны между собой понятия параллелизма, поточности и асинхронности
  • Погружаемся в параллелизм, поточность и асинхронность
  • Как организуются конкурентные вычисления в Python
  • Многопоточность в Python
  • Асинхронность в Python
  • Параллелизм в Python
  • Как определить подходящий механизм конкурентного выполнения кода в Python
  • Для закрепления о многопоточности, асинхронности и параллелизме
  • сопрограмма («корутина»)
  • задача («таск»)
  • цикл событий
  • еще раз про цикл событий
  • в чем разница корутинами и задачами
Модуль 2 - Создаём виртуальное окружение и шаблон проекта
  • Создаем виртуальное окружение. Часть 1
  • Создаем виртуальное окружение. Часть 2
  • Устанавливаем служебные плагины
  • Создаем начальную структуру проекта
Модуль 3 - Создаём начальный функционал серверной части приложения
  • Реализуем модели. Часть 1
  • Реализуем модели. Часть 2
  • Реализуем класс-коннектор для работы с базой данных
  • Реализуем класс-контроллер для операций с базой данных
  • Реализуем миксины для операций с базой данных
  • Реализуем миксины для операций с сообщениями
  • Создаем конструктор сообщений
  • Создаем главный серверный класс
  • Переопределяем метод установления соединения
  • Реализуем метод для аутентификации клиента
  • Переопределяем метод получения данных
  • Создаем запускаемый модуль для сервера
  • Настраиваем главный метод серверного класса
  • Настраиваем функцию парсинга аргументов сервера
Модуль 4 - Создаём начальный функционал клиентской части приложения
  • Реализуем модели
  • Реализуем класс-коннектор для операций с базой данных
  • Реализуем класс-контроллер для операций с базой данных
  • Реализуем миксины для операций с базой данных и сообщениями
  • Создаем конструктор сообщений
  • Создаем главный клиентский класс. Часть 1
  • Создаем главный клиентский класс. Часть 2
  • Создаем главный клиентский класс. Часть 3
  • Создаем главный клиентский класс. Часть 4
  • Создаем класс для аутентификации клиента
  • Создаем запускаемый модуль для клиента
  • Настраиваем главный метод класса. Часть 1
  • Настраиваем главный метод класса. Часть 2
  • Выполняем тестовый запуск проекта. Часть 1
  • Выполняем тестовый запуск проекта. Часть 2
Модуль 5 - Создаём основу графического интерфейса сервера и клиента
  • Устанавливаем библиотеку pyqt5. Часть 1
  • Устанавливаем библиотеку pyqt5. Часть 2
  • Создаем главное окно приложения
  • Подключаем главное окно сервера к запускаемому файлу
  • Проверяем работу графического интерфейса сервера
  • Создаем форму для отправки сообщений
  • Создаем форму для аутентификации
  • Создаем форму для работы с контактам
  • Создаем главное окно клиентского приложения
  • Подключаем главное окно клиента к запускаемому файлу
  • Проверяем работу приложения
Модуль 6 - Реализуем основную логику серверного и клиентского приложений
  • Создаем класс-модель для таблицы с контактами
  • Создаем класс-модель для таблицы с сообщениями
  • Создаем классы-модели для клиента
  • Реализуем метод для добавления контакта
  • Реализуем метод для удаления контакта
  • Реализуем метод для получения списка контактов для пользователя
  • Реализуем метод для получения зарегистрированных пользователей
  • Реализуем метод для получения истории входов пользователя
  • Реализуем метод для перевода клиента в статус «оффлайн»
  • Реализуем метод для получения статуса пользователя
  • Реализуем метод для сохранения указанного сообщения
  • Реализуем метод для получения сообщений пользователя
  • Дополняем клиентский класс-контроллер методами для операций с базой данных
  • Дополняем серверный и клиентский классы-миксины
  • Дополняем конструктор сообщений клиентского приложения
Модуль 7 - Настраиваем взаимодействие сервера и клиента через графический интерфейс
  • Дорабатываем окно авторизации
  • Дорабатываем модуль run.py клиента
  • Дорабатываем окно с контактами
  • Проверяем работу приложения 1
  • Дорабатываем главное окно серверного приложения
  • Проверяем работу приложения 2
  • Реализуем отображение окна с контактами
  • Проверяем работу приложения 3
  • Дорабатываем окно с чатом
  • Дорабатываем модуль client_proto.py
  • Корректируем главное окно серверного приложения
  • Проверяем работу приложения 4
  • Выполняем доработку серверного приложения
  • Устраняем ошибки перед проверкой 5
  • Проверяем работу приложения 5
  • Выполняем итоговую доработку
  • Проверяем работу приложения 6
Модуль 8 - Создаём лаунчер для запуска проекта
  • Реализуем первый способ запуска
  • Реализуем второй способ запуска
  • Итоги курса
 

Подробнее:
Скрытый контент для авторизованных пользователей.
Ссылки и информация для скачивания:

О нас

  • - Наш форум был создан с одной целью, помогать другим! На нашем форуме, Вы можете скачать самые свежие и популярные курсы, книги, тренинги и вебинары, схемы по заработку, различные мануалы и готовые кейсы, а так же слитые складчины с торрент ресурсов, по самым разным направлениям бесплатно!

    Слив курсов

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

    Слив онлайн курсов

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

    На нашем сайте вы найдёте курсы следующих тематик:
    • Курсы и лекции от известных школ и авторов;
    • Уроки по дизайну, графике, программированию и бизнесу
    • Тренинги по саморазвитию, психологии и эзотерике;
    • Материалы по отношениям, пикапу и соблазнению;
    • Нейросети и Маркетплейсы;
    • Онлайн-обучение по шитью, строительству, рукоделию и работе по дому;

    Слив Курсов Бесплатно

    К скачиванию доступны сотни материалов и складчин, со всех известных сайтов, таких как складчик или складчина. Все курсы доступны в одной подписке. Больше не нужно покупать курсы по одному!

    Онлайн курсы форум

    Обошли многие форумы и не нашли подходящий курс? Скачивайте любой из сотни тысяч курсов на нашем форуме. Инфопродукты и новые сливы курсов пополняются ежедневно! Если вы не нашли нужный курс на других форумах, у нас вы сможете скачать любой из сотен тысяч доступных инфопродуктов. Ежедневно мы пополняем базу новыми сливами курсов, чтобы вы всегда могли найти актуальные материалы для обучения.