Молодцы, чтобы понять это. Да, это именно то, что вы описали.
Лично я не думаю, что есть предпочтительные способы сделать это. Если вы знакомы с Java, у них нет методов доступа get / set. Вы можете сделать это только с помощью открытого свойства или создания методов get () / set (значение объекта).
C # дает вам больше контроля над тем, как вы можете использовать свойство.
Как яПосмотрите на это из контекста получения значения heightHalf, этому свойству нужно что-то, чтобы изменить размер, ну, я думаю, это коллайдер?
Вы можете сделать это либо из свойства get / set, либометод getHeightHalf ().
Однако вместо объектно-ориентированных принципов можно сказать, что все методы объекта могут быть указаны как действие. то есть: класс, который обрабатывает игрока, может иметь функции Jump (), Move (), Attack ().
Средства доступа Get / Set предоставляют значения, необходимые для этих действий, поэтому логика heightHalf размещена насвойство вместо метода.