Тема 5 из 9 Важная тема
ООП
Классы и объекты: наследование, инкапсуляция, магические методы, итераторы и асинхронность.
- 01 Введение в ООП Главным понятием ООП является понятие программного объекта. Вообще говоря, большинство сущностей на планете Земля – это некие объекты. И с частью из них мы взаимодействуем при… ≈10 мин
- 02 Концепции ООП На прошлом уроке мы подошли к основной идее ООП: повышение уровня абстракции за счёт объединения процедур и данных в "объект". Эта идея остаётся неизменной, какой бы конкретный… ≈8 мин
- 03 Наследование Наследование – важная составляющая объектно-ориентированного программирования. Так или иначе мы уже сталкивались с ним, ведь объекты наследуют атрибуты своих классов. Однако… ≈6 мин
- 04 Полиморфизм В буквальном значении полиморфизм означает множество форм. ≈5 мин
- 05 Инкапсуляция Значение термина «инкапсуляция» расплывчато и отличается от источника к источнику. Принято считать, что инкапсуляция — один из основополагающих принципов ООП, хотя некоторые… ≈6 мин
- 06 Множественное наследование и миксины Чтобы обсудить миксины, мы должны начать с одного из самых спорных вопросов в мире ООП: множественное наследование. Это естественное расширение концепции простого наследования… ≈25 мин
- 07 Миксины Миксины - это классы, которые ничем не отличаются от обычных. Их главная особенность заключается в том, что они не предназначены для создания экземпляров напрямую. Их основная… ≈1 мин
- 08 Абстрактные классы. Модуль abc От абстрактных классов нельзя напрямую создавать экземпляры. От них можно только наследоваться, и в субклассах необходимо реализовать методы. Давайте, взглянем на следующий пример: ≈3 мин
- 09 Магические методы В Python существуют так называемые магические методы. Их назвали так потому, что они добавляют магию в поведение класса. Также у них есть такие названия как специальные, служебные… ≈12 мин
- 10 Свойства: getter, setter, deleter Что нам делать, если мы захотим иметь возможность получить ещё и полное имя (имя+фамилию) объекта? ≈3 мин
- 11 Синхронность и асинхронность процессов Мир может многому научиться у программистов. Он и так учится, только не тому и не так. Например, взял процессы и алгоритмы, но не заметил такого подхода, как асинхронность. ≈5 мин
- 12 Метаклассы Python — это объектно-ориентированный язык, который облегчает работу с классами. Метапрограммирование в Python основано на новом особом типе классов, которые называются… ≈5 мин
- 13 Итераторы и генераторы Во многих современных языках программирования используют такие сущности как итераторы . Основное их назначение – это упрощение навигации по элементам объекта, который, как… ≈10 мин
- 14 Регулярные выражения Любая строка (в которой нет символов .^$ +?{} ()) ≈6 мин
- 15 Асинхронный Python: различные формы конкурентности С появлением Python 3 довольно много шума об “асинхронности” и “параллелизме”, можно полагать, что Python недавно представил эти возможности/концепции. Но это не так. Мы много раз… ≈11 мин
- 16 Как работает память в Python Ни одна компьютерная программа не может работать без данных. А данные, чтобы программа имела к ним доступ, должны располагаться в оперативной памяти вашего компьютера. Но что… ≈8 мин