Тема 5 из 9 Важная тема

ООП

Классы и объекты: наследование, инкапсуляция, магические методы, итераторы и асинхронность.

16 уроков · ≈124 мин чтения

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