Данные и логика
Источник: https://youtu.be/horzPtSCS4M?si=YsVyLTyDm7vEPQB-
Изменение данных вызывает логику, логика меняет данные.
Данные - параметры объекта и их значения: int h=99, enum, color и т.д.
Логика - изменение значений данных: h+1 и т.д.
Свойство - осмысленные параметры: int Health, enum Weapon и т.д. Источник истины.
Состояние - осмысленные значения свойства: int Health = 99, enum Weapon {Knife, Gun} и т.д., зависит от действий - изменяется от действий.
Действие - осмысленная логика, изменение состояния свойств, зависит от состояний свойств - запускается тем или иным состоянием.