В предыдущей части мы рассмотрели особенности языка программирования Python и ключевые принципы ООП. Продолжим разговор.

Методы

Метод – функция, которая определена внутри класса. Позволяет определять поведение того или иного элемента в программном коде.

Метод из класса – основополагающая того, как будет работать object в кодификации. Задается таким образом:

Объектно-ориентированное программирование вместе с Python. Часть 2

После обработки будет выведено на экран следующее:

Объектно-ориентированное программирование вместе с Python. Часть 2

Здесь происходит определение двух методов – sing() и dance(). Они выступают в качестве методов экземпляров. Служат для того, чтобы экземпляр объекта blu нормально функционировал в процессе обработки информации.

Наследование

Наследование – способ создания нового класса на основе старого. Соответствующее определение удается обнаружить в Google. Новый класс выступает в качестве производного. Носит название дочернего. Существующий класс – базовый. Это – представитель родительского класса. Того, от которого осуществляется передача принципов.

Вот пример применения наследования:

Объектно-ориентированное программирование вместе с Python. Часть 2

И результат исполнения программного кода:

Объектно-ориентированное программирование вместе с Python. Часть 2

Стоит обратить внимание на то, как работает созданная программистом утилита:

  1. Сначала появляются два класса – Bird – родитель и Penguin – наследник.
  2. Последний будет наследовать функции родительского класса. За соответствующий момент отвечает swim().
  3. Дочерний класс корректирует поведение родительского – через метод whoisThis().
  4. За счет метода (нового) run() осуществляется расширение родительского класса.
  5. Через функцию super(), которая стоит перед методом __ init __() происходит извлечение содержимого метода __init__() из родительского класса в дочерний.

Все это происходит непосредственно для того, чтобы можно было получить на экране приведенный выше результат.

Инкапсуляция

Используя ООП в Python, можно при желании ограничивать доступ к методам и переменным. Об этом говорит не только Google, но и самоучители, а также туториалы по рассматриваемому языку. Соответствующая особенность позволяет корректировать информацию за пределами класса. Носит название инкапсуляции.

В Питоне можно установить приватный модификатор доступа. Для реализации поставленной задачи в виде префикса применяется одинарное или двойное подчеркивание.

Объектно-ориентированное программирование вместе с Python. Часть 2

А вот результат:

Объектно-ориентированное программирование вместе с Python. Часть 2

Работает все это следующим образом:

Происходит определение класса в Python под названием Computer.

  1. Используется метод __init__() для того, чтобы сохранить значение предельной стоимости продажи устройства.
  2. Требуется откорректировать цену. Сделать это не представляется возможным. Явление связано с тем, что __maxprice воспринимаются языком в виде приватных атрибутов.
  3. Для корректировки стоимости использовалась функция сеттера – setMaxPrice(). Она принимает цену в виде параметра.

На самом деле здесь нет ничего трудного для понимания. И даже начинающий разработчик сможет справиться с поставленной задачей.

Несколько слов о полиморфизме

Еще один весьма важный момент в ООП согласно информации из Google. Полиморфизм – способность использовать в объектно-ориентированном программировании общий интерфейс для нескольких форм или типов данных.

Для того, чтобы было проще разобраться с соответствующей особенностью, рекомендуется рассмотреть пример из обыденной жизни. Дана фигура. Ее необходимо закрасить. Существуют несколько фигур – прямоугольник, овал, параллелограмм. Один и тот же метод можно использовать для любого предложенного элемента. Это и есть полиморфизм. В программировании, если верить Google, сохраняются точно такие же принципы.

Объектно-ориентированное программирование вместе с Python. Часть 2

И результат обработки кода:

Объектно-ориентированное программирование вместе с Python. Часть 2

Работа осуществляется следующим образом:

  1. Программа начинает работать и определяет два класса – Parrot и Penguin.
  2. Каждый обладает общий метод – fly(). Но у «Пэррот» и «Пингвин» он будет разным.
  3. Создается интерфейс (def). Он поможет при реализации полиморфизма.
  4. Осуществляется работа функции flying_test(), которая способна принимать любые объекты.
  5. Происходит передача элементов blu и peggy в функцию под названием flying_test().

Полиморфизм – удобная вещь в ООП, освоив которую, удастся создавать сложные программы с минимальным объемом кода.

Термины – что пригодится каждому

Google – поисковая система, в которой найдется все. Каждый разработчик должен не только разобраться с ООП, но и перед этим запомнить несколько ключевых понятий. Без них изучение любого языка, независимо от его синтаксиса, будет значительно затруднено:

  • переменная – единица (место) хранения информации;
  • массив – группы/списки схожих типов значений данных, подлежащих группировке;
  • класс – набор связанных объектов с общими свойствами;
  • символ – единица отображения электронных материалов, которая выражена одной буквенной или символьной записью;
  • аргумент – значение, передаваемое в функции или команды;
  • API – интерфейс прикладного программирования, правила и процедуры, которые помогают создавать приложения;
  • библиотека – хранилище готовых элементов (блоков) кодов, используемых для более быстрого создания сложного программного обеспечения;
  • оператор – элемент, который умеет управлять операндами;
  • операнд – объект, подлежащий манипулированию через операторы;
  • алгоритмы – наборы функций и правил, используемых для того, чтобы решать разнообразные задачи в программировании;
  • жесткий код – кодификация, которая вряд ли будет меняться;
  • ключевое слово – слово, зарезервированное программой или языком программирования в виде особого значения.

На первых порах этого будет достаточно. В Google можно отыскать не только принципы создания объекта или класса всего с одним «параметром», но и ключевые термины программирования.

Преимущества ООП

В Google полно уроков, который помогут лучше освоить Питон и ООП. По этой ссылке расположены туториалы для новичков. Не придется тормошить Google и иные поисковики, чтобы выучить «базу».

За счет ООП:

  • процесс коддинга становится более простым и эффективным;
  • класс общий, поэтому допускается использовать один и тот же элемент повторно;
  • производительность и приложений, и разработчиков возрастает;
  • абстракции помогают обезопасить информацию.

Отличный вариант как для новичков, так и для уже продвинутых разработчиков.

А что там по знаниям

Для того, чтобы не пришлось рыскать по всему Google в поисках полезной информации об ООП Python, можно воспользоваться одним простым и очень интересным приемом. Речь идет об обучении на специализированных курсах. Рассчитаны они на срок от месяца до года. Можно сразу отдать предпочтение одному или нескольким направлениям.

Во время изучения образовательной программы ученику будут предложены вебинары и видео-уроки, а также непосредственное общение с кураторами. Гарантировано море практики, которая поможет закрепить пройденные материалы. Обучение осуществляется в любое удобное время – главное иметь под рукой стабильное подключение к Сети.

Чем хороши курсы

Некоторые программисты начинают свой путь в IT с самообразования. Это неплохое решение, но приходится искать в Google информацию «по крупицам». У профильных курсов имеется ряд существенных преимуществ:

  • грамотно составленные и тщательно проработанные образовательные программы;
  • наличие кураторской поддержки;
  • организация занятий дистанционно, в удобное для ученика время;
  • возможность совмещения с несколькими направлениями, учебой в ВУЗе или работой;
  • не нужно отрываться от обыденных дел для успешного завершения курса;
  • можно выбрать одно или несколько направлений;
  • предложения как для новичков, так и для опытных программеров.

В конце учебы будет выдан сертификат электронного образца. Он подтвердит знания человека – пользователь сможет не только объяснить, что в коде означает self, но и самостоятельно создавать через ООП на Питоне разнообразные утилиты.

Объектно-ориентированное программирование вместе с Python. Часть 2