ycliper

Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
Скачать

Вы не знаете как устроены ваши классы! - Никита Соболев | TechMeetup #6 Python

TechMeetup

техмитап

python

class

Автор: TechCommon

Загружено: 2024-06-01

Просмотров: 4135

Описание: Никита Соболев (@sobolevn), независимый open-source разработчик, затворник, ретроград, на TechMeetup #6 (https://live.wecloud.events/techmeetu...) по разработке на python и его экосистеме совместно со Звуком выступил с докладом: "Вы не знаете как устроены ваши классы!"

Представьте, что однажды утром вы просыпаетесь, а кто-то украл ключевое слово class из питона. Нам нужно срочно переизобрести классы, иначе всему ООП придет конец!

Доклад даст задуматься:
-Как устроен ваш typeobject?
Какие бывают слоты, зачем они нужны?
Интересные граничные случаи: nb_add и sq_concat
Stack / Heap types
CAPI для создания классов

episods (auto):
00:00 Введение
• Приветствие и представление Никиты Соболева.
• Введение в тему классов в Python.
• Никита объясняет, что класс в Python - сложная и запутанная тема.

00:22 Презентация и цели
• Никита объясняет, что его презентация будет скорее шпаргалкой, чем полноценной презентацией.
• Он планирует осветить основные темы и показать код, который может быть сложным для чтения.
• Никита - разработчик Python, входит в топ-35 по коммитам.

02:16 Введение в доклад
• Никита рассказывает о важности классов в Python и их безопасности.
• Он предлагает переизобрести ключевое слово "класс" и его поведение.
• Никита показывает, как работает создание класса в Python.

03:03 Билды и классы
• Никита объясняет, что такое билды и как они связаны с классами.
• Он упоминает, что билды могут быть устаревшими и вызывать ошибки.
• Никита сравнивает старые и новые билды и их поведение.

04:42 Тайп и Тайпс Нью Класс
• Никита объясняет разницу между старым и новым билдами.
• Он показывает, как создавать классы с помощью нового билды.
• Никита упоминает, что новый билд поддерживает работу с дженериками.

07:08 Магические атрибуты
• Никита объясняет важность магических атрибутов, таких как dict, slots, mro, bases и другие.
• Он подчеркивает, что не все атрибуты важны для работы классов.
• Никита рассказывает о двух типах классов в Python: статических и хип-тайпах.

08:45 Хип-тайпы
• Никита объясняет, как работают хип-тайпы и их преимущества.
• Он показывает, как создавать и использовать хип-тайпы.
• Никита подчеркивает важность тестирования изменений при переходе на хип-тайпы.

10:57 Наследование
• Никита объясняет, как работает наследование в Python.
• Он упоминает нюансы наследования слотов и флагов.
• Никита завершает обсуждение, подчеркивая, что не все нюансы будут рассмотрены в рамках презентации.

11:17 Наследование и доступ через точку
• Наследование можно применять не только к типам, но и к любым объектам с базовыми классами.
• Доступ через точку в Python работает через определенные функции и порядок их выполнения.
• Порядок доступа через точку: дата-дескрипторы, инстанс-фрайблы, нондата-дескрипторы и класс-фрайблы.

13:43 Нон-дата-дескрипторы и магические методы
• Нон-дата-дескрипторы работают через магические методы, которые транслируются в сишные слоты.
• Пример: слот nb_type, который работает с методами et и rt и может быть частью спецификации последовательности.
• Пайнамбэд складывает объекты по-разному в зависимости от их типа.

15:32 Инкапсуляция и прайвод
• Инкапсуляция в Python проста, но требует понимания работы с сим-таблицей.
• Прайвод работает через создание нового namepace и добавление объектов в приватное пространство имен.
• Процесс нейм-менглинга добавляет префикс к приватным именам.

17:19 Вызов супер
• Вызов супер в Python работает через магический атрибут `__closure__`.
• Можно заставить вызов супер отправлять в другое место, что может запутать коллег.
• Пример: вызов супер без параметров в Python 2.

18:18 Заключение и ссылки
• Автор призывает подписаться на его GitHub и YouTube канал.
• Обсуждение жизни Open Source в России и консалтинга.
• Вопросы и ответы о наследовании, опенсорсе и метаклассах.

23:22 Оптимизация кода
• Обсуждение оптимизации кода на уровне байт-кода.
• Пример с магическими методами и их оптимизация.
• Возможность оптимизации на основе использования, а не вызова функций.

24:21 Подстановка имен классов
• Обсуждение подстановки имен классов.
• Объяснение, почему это сделано для имитации приватных переменных.
• Проблемы использования инстанс дикт и прай инстанс дик.
• Возможность тестирования приватных атрибутов.

25:28 Наследование функций
• Обсуждение наследования функций и его преимуществ.
• Пример использования типа dict как функции и класса.
• Сравнение с data class в Python.
• Data class переписывает класс полностью как декоратор.

26:43 Завершение и благодарности
• Выбор лучшего вопроса и благодарность спикеру.
• Напоминание о встрече вечером.

#tech_meetup #python #tech_meetup6

---

Есть вопросы?
Добавляйся в нашу уютную общалку TechCommon/Python (https://t.me/tech_common) 👈

Следи за будущими анонсами на основном канале @tech_meetup (https://t.me/tech_meetup) или в @tech_meetup_py (https://t.me/tech_meetup_py) если интересен только Python ❤

Не удается загрузить Youtube-плеер. Проверьте блокировку Youtube в вашей сети.
Повторяем попытку...
Вы не знаете как устроены ваши классы! - Никита Соболев | TechMeetup #6 Python

Поделиться в:

Доступные форматы для скачивания:

Скачать видео

  • Информация по загрузке:

Скачать аудио

Похожие видео

© 2025 ycliper. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]