Введение в принципы объектно-ориентированного программирования (ООП): инкапсуляция, наследование, полиморфизм и многое другое