Techlog #3. Experimental. Basic concepts. Classes [ru]
Added 2023-06-01 14:02:25 +0000 UTC
Небольшое дополнение к первой статье про классы в python.
Ранее был приведен пример того, как я присваиваю полю значение через метод, который сам же определил внутри класса. Как оказалось - это не особо Python-way.
В python как и в любом другом ООП языке есть встроенные методы по созданию getter и setter для полей внутри класса.
getter - метод для получения значения поля.
setter - метод для присваивания значения полю.
Я сразу же принялся рефакторить игру после того как узнал это.
@property - это наш getter.
@property_name.setter - это наш setter.
Ну и так как, в моём случае, Quest и QuestStep имеют практически идентичную структуру - всю логику я вынес в отдельный класс QuestEntity.
И просто наследую саму эту сущность в классе который я применяю на практике.