Доступно

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

Тема в разделе "Курсы по программированию", создана пользователем Toxich, 21 июл 2022.

Цена: 5650р.-93%
Взнос: 370р.
100%

Основной список: 36 участников

Резервный список: 3 участников

Статус обсуждения:
Комментирование ограничено.
  1. 21 июл 2022
    #1
    Toxich
    Toxich ЧКЧлен клуба
    Создаем мессенджер на базе Python asyncio [2022]
    Udemy
    Дмитрий Читалов


    Вы научитесь создавать асинхронные проекты средствами 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 - Создаём лаунчер для запуска проекта
    • Реализуем первый способ запуска
    • Реализуем второй способ запуска
    • Итоги курса

    Примечание: язык курса Русский
    Примечание: стоимость курса 94,99 (EUR)

    Продажник
     
    1 человеку нравится это.
  2. Последние события

    1. skladchik.com
      Складчина доступна.
      8 авг 2022
    2. KSG89
      KSG89 участвует.
      8 авг 2022
    3. roverpro
      roverpro участвует.
      8 авг 2022
    4. stupid blonde
      stupid blonde участвует.
      8 авг 2022

    Последние важные события

    1. skladchik.com
      Складчина доступна.
      8 авг 2022
    2. skladchik.com
      Взнос составляет 185р.
      8 авг 2022
    3. skladchik.com
      Складчина активна.
      8 авг 2022
    4. skladchik.com
      Цена составляет 5650р.
      7 авг 2022
  3. Обсуждение
  4. 5 авг 2022
    #2
    Javaist
    Javaist ЧКЧлен клуба
    Орг, а что с ценой? По ссылке даже сейчас 2990р. Без распродаж.
     
    2 пользователям это понравилось.
Статус обсуждения:
Комментирование ограничено.