[Udemy] Python ООП — С нуля до Профи [Никита Хохлов]
65₽
Объектно-ориентированное программирование (ООП) — это парадигма программирования, где различные компоненты компьютерной программы моделируются на основе реальных объектов. Объект — это что-либо, у чего есть какие-либо характеристики и то, что может выполнить какую-либо функцию. Главным понятием ООП является понятие программного объекта. Вообще говоря, большинство сущностей на планете Земля – это некие объекты. И с частью из них мы взаимодействуем при помощи программирования. Банковский счёт, персонаж компьютерной игры или анимированный виджет сайта – всё это легко представить в виде объектов. Можно сказать, что объектно-ориентированное программирование позволяет смоделировать реальный объект в виде программного.
Темы которые мы изучим:
— Объекты и классы
— Атрибуты (Setattr, getattr, delattr, dict)
— Инициализация объектов и аргумент self
— Свойства (getter, setter, deleter)
— Dunder методы (get, set)
— Статические методы (@staticmethod)
— Slots — оптимизируем потребление памяти
— Dunder метод (New)
— Методы класса (@classmethod)
— Инкапсуляция — публичные, приватные и защищенные атрибуты
— Моносостояние — принцип работы
— Полиморфизм на примере (@singledispatch)
— Dunder методы (str, repr, len, del)
— Dunder методы (bool, bytes, float, int)
— Dunder методы (pow, reversed, truediv)
— Dunder методы (next, iter, call)
— Контекстный менеджер в классе используя (enter, exit)
— Dunder методы (add, sub, eq, hash)
— Работа с атрибутами (hasattr, getattr)
— Dunder методы (getitem, setitem, delitem, mul)
— Наследование и перегрузка методов
— Разбираем (isinstance, issubclass, getsizeof)
— Переопределение методов родителя
— Дата-классы (@dataclass)
— Множественное наследование (mro, vars, callable, super)
— Абстрактные методы (ABCMeta, abstractmethod)
— Декораторы классов
— Динамическое редактирование класса
— Метаклассы
Какие задания мы выполним?
— Рассмотрим связь классов и экземпляров в памяти компьютера
— Научимся переопределять поведение классов и базовых операторов
— Разберем полиморфизм, наследование, инкапсуляцию на простых примерах
— Рассмотрим принцип динамического редактирования классов
— Рассмотрим основные концепции метапрограммирования
— Научимся оптимизировать классы и использовать декораторы классов
— Рассмотрим продвинутые темы для работы с полиморфизмом и дата-классами
Для кого этот курс:
- начинающие разработчики Python
- разработчики, которые хотят изучить ООП на профессиональном уровне