Это хороший синтаксис? [Unity]
Является ли этот синтаксис хорошим и эффективным, или же стоит получать компоненты в методе Start?
private Rigidbody2D Rb => GetComponent<Rigidbody2D>();
private Player Player => GetComponent<Player>();
Ответы (1 шт):
Автор решения: KOTlK
→ Ссылка
Это ничем не отличается от обычного вызова GetComponent. Rb в данном случае это просто:
private Rigidbody2D Rb { get { return GetComponent<Rigidbody2D>(); } }
Мы получаем компоненты в методе старт не для того, чтобы был синтаксис лучше, а для того, чтобы закэшировать какой-то компонент, к которому будем часто обращаться. Так как GetComponent затратная по времени операция, то очень частое его использование может привести к потере производительности