Что такое объектно-ориентированное программирование?
Вы уже пользовались объектами много глав подряд — просто ещё не называли их так.
Что такое объектно-ориентированное программирование?
Присмотритесь к коду из предыдущих глав: artist.forward(100),
"Python".upper(), [1,2,3].append(4)
— во всех трёх у нас есть какой-то объект (черепашка, строка, список) и
команда, которую мы у него вызываем через точку. Это и есть объектно-ориентированное
программирование (ООП): способ организовать код вокруг объектов, у которых есть свои
данные и свои действия — а не только вокруг отдельных функций и переменных.
Давайте это докажем!
Вы уже пользовались объектами с самой главы 6, даже не называя их так:
import turtle
artist = turtle.Turtle() # artist — объект класса Turtle
artist.forward(100) # forward() — действие (метод) этого объекта
artist.color("red") # у объекта есть и своё состояние — например, цвет
turtle.Turtle — это класс: чертёж, шаблон,
описывающий, какими бывают черепашки и что они умеют. Каждый вызов
turtle.Turtle() создаёт новый, независимый
объект (говорят также «экземпляр класса») по этому чертежу — вспомните
главу 12, где несколько независимых черепашек участвовали в гонке одновременно.