IT Videos

Типизированный Python для профессиональной разработки — теория и практика [2022]


Listen Later

Книга в PDF https://t.me/t0digital/151

Веб-версия https://to.digital/typed-python/

Курс — https://course01.to.digital/

Цель этого материала — помочь тебе научиться писать более красивые, надёжные и легко сопровождаемые программы на Python. То, о чём мы здесь будем говорить, это не начальный уровень владения языком, предполагается, что ты уже минимально умеешь программировать, но хочешь научиться делать это лучше. Будем учиться писать более надёжные, качественные и легко сопровождаемые программы, используя типизацию в Python.

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

Разберём эти и другие типы:

  • NamedTuple
  • dataclass
  • TypedDict
  • Enum
  • Literal
  • Union, Optional
  • Iterable, Sequence
  • Callable
  • TypeVar и др.
  • Код — https://github.com/alexey-goloburdin/weather

    Сказать спасибо денежкой за работу и материал можно здесь:

    https://boosty.to/digitalize.team

    0:00 Постановка целей

    5:10 Type hinting — зачем?
    7:55 Раннее выявление ошибок
    22:24 Читаемость и поддерживаемость кода
    25:34 Помощь IDE при разработке
    26:30 Zen of Python
    28:20 Интерпретатор не проверяет подсказки типов
    31:19 Пишем программу погоды
    36:56 Накидываем структуру приложения
    42:01 Пишем каркас приложения
    48:16 NamedTuple — именованный кортеж
    52:02 Обычный словарь dict
    56:09 Literal
    58:04 TypedDict
    1:00:37 Dataclass
    1:13:20 Alias для типа
    1:16:25 Enum
    1:27:35 Реализация — получение GPS координат
    1:40:40 Реализация — получение погоды с API OpenWeather
    1:50:36 Реализация — принтер погоды
    1:51:55 Обработка исключений
    1:53:19 Проверяем работу приложения
    1:43:07 Использование интерфейсов или абстрактных классов
    2:07:39 Анализ получившейся архитектуры кода
    2:15:29 Статический анализатор mypy
    2:18:15 Optional
    2:19:18 Контейнеры — Iterable, Sequence, Mapping и др.
    2:27:14 О типизации кортежей
    2:28:57 Дженерики
    2:32:05 Callable
    2:33:35 Stub файлы и работа с нетипизированными библиотеками
    2:36:42 Подсказки типов нужны только в функциях?
    2:39:47 Резюме

    /****************** about ******************/

    Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:

    — Диджитализируй https://digitalize.team, разрабатываем сложные IT системы для бизнеса;

    — Salesbeat https://salesbeat.pro, комплексный модуль доставки для интернет магазинов.

    Мои соц сети:

    Telegram канал — @t0digital
    ВК — https://vk.com/digitalize.team
    Дзен — https://zen.yandex.ru/id/6235d32cb64df01e6e78c883

    ...more
    View all episodesView all episodes
    Download on the App Store

    IT VideosBy