Объектно-ориентированное программирование на Python
Курс "Объектно-ориентированное программирование на Python" знакомит с особенностями ООП в общем и его реализацией в языке Python. Предполагается, что вы знакомы с Python на уровне структурного программирования (основные типы данных, ветвления, циклы, функции).
Ключевыми понятиями объектно-ориентированного программирования являются "класс" и "объект". Объекты порождаются от своих классов. В языке программирования Python такие объекты принято называть экземплярами.
Наследование, полиморфизм и инкапсуляция – основные принципы, столпы объектно-ориентированного программирования. Наследование предполагает возможность определения дочерних классов, полиморфизм – разный способ реализации одного и того же, инкапсуляция – сокрытие и объединение данных и методов. Композиция реализуется реже, означает возможность создания объектов, составными частями которых являются объекты других классов.
Конструктором в ООП называют метод класса, который вызывается автоматически при создании объекта от этого класса. В то же время конструктор относится к методам перегрузки операторов. Имена таких методов регламентированы самим языком программирования, а их вызов происходит автоматически при участии объекта в тех или иных операциях. Например, сложении, извлечении элемента и др.
Итераторы – это особая разновидность объектов подобных коллекциям вроде списка, но которые не хранят в себе весь набор элементов, а генерируют только один при каждом обращении. В Python есть встроенные классы-типы данных, от которых создаются итераторы. Однако также можно определять собственные классы, чьи экземпляры будут обладать возможностями итераторов.
Версия курса: июнь 2023 г.
Курс включает 15 уроков:
Что такое объектно-ориентированное программирование
Создание классов и объектов
Конструктор класса – метод __init__()
Наследование
Полиморфизм
Инкапсуляция
Композиция
Перегрузка операторов
Статические методы
Итераторы
Генераторы
Модули и пакеты
Документирование кода
Пример объектно-ориентированной программы на Python
Итоги курса "Объектно-ориентированное программирование на Python"
Краткие видео-версии уроков:
YouTube
Курс с примерами решений практических работ:
pdf-версия