TGViewer
DataEng DataEng @dataeng · 4.39K subscribers
Post #181 922

Forwarded from DevBrain

В 2016 году во время PyCon US 2016 в Портленде я встретил Гвидо ван Россума во время networking-сессии в холле. Первый вопрос, который я ему тогда задал относился к реализации интерфейсов в Python (just like in Java). Есть ли шанс, что в будущих версиях Python мы увидим реализацию интерфейсов? На что был получен однозначный ответ, что этого не стоит ждать, для таких целей можно использовать абстрактные классы (модуль abc). После я поинтересовался его мнением про zope.interfaces, на что также была получена рекомендация их не использовать 😢

Но не так давно, шерстя просторы официальной документации, я наткнулся на интересную штуку, а именно на typing.Protocol. По своей сущности это самый настоящий интерфейс. А не так давно нашел и обзор этой штуки, статья must read: I Want A New Duck.

Если кратко, то Protocol в первую очередь нужен, если вы активно используете mypy для статического анализа кода. Наверняка вы могли сталкиваться с аннотациями на кастомные классы, когда в функцию или метод могут передаваться разные объекты, протокол/интерфейс (читай, общие методы) которых одинаковый.
Twistedmatrix I Want A New Duck typing.Protocol and the future of duck typing
More from @dataeng
  1. Aug 23, 2026Официальная документация по Python теперь доступна на русском языке: https://blog.python.o…
  2. Jul 20, 2026PostgreSQL 18 изнутри Postgres Pro выпустили новую версию книги про устройство PostgreSQL:…
  3. Jul 16, 2026На канале Елизаветы Осетинской вышло интересное интервью с создателем ClickHouse Алексеем…
  4. Apr 30, 2026PostgreSQL 16: Оптимизация запросов 🖥 Вчера случайно заметил, что на Postgres Pro появила…
  5. Apr 29, 2026Эффективно управлять сложностью можно через абстракции. Например, через практики внедрения…
  6. Apr 29, 2026Отказоустойчивость железа достигается через добавление избыточных компонентов, например, в…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →