Знания необходимые для того, чтобы понять о чём я буду говорить:
1. Синтаксис C#
2. Базовое понимание принципов ООП
3. Увлечение движком Unity
Берите чашечку какао с зефирками, садитесь в удобное кресло, и мы начинаем:)
Минутка терминологии для непонимающих:
Поле является переменной любого типа, которая объявлена непосредственно в классе или структуре. Поля являются членами содержащих их типов.
Microsoft Docs — это библиотека технической документации для конечных пользователей, разработчиков и IT-специалистов, работающих с продуктами Microsoft.
Для начала, Не нужно делать публичных полей в ваших скриптах без надобности, ведь под рукой всегда есть такая чудесная штука как [SerializeField]. Что же это такое?
С помощью [SerializeField] вы получаете доступ к приватным полям в инспекторе Unity, и соответственно изменять их не меняя значения в скрипте.
Это очень помогает в случаях, когда вы уже не на начальной стадии разработки, и строки кода идут уже в счету по тысячам, а самих скриптов уже навалило не много не мало 10+, и именно тогда на помощь приходит он — [SerializeField] — Герой нашего времени!
Также, приватные переменные(в независимости сериализованы они или нет) мы называем начиная с _(нижнего подчёркивания) и маленькой буквы.
Оформление полей.
Если у вас в коде много полей с разными модификаторами доступа, например public и private etc.. На этот случай тоже есть рекомендация по оформлению и читабельности вашего кода.
Иерархия расположения модификаторов доступа:
1. [SerializeField] — поля с этим модификатором расположены выше всех остальных.
2. private — После [SerializeField] через пустую строку идут приватные поля.
3. Далее идут свойства и методы…
Вы наверное спросите, а где же публичные поля? По хорошему, у вас не должно быть публичных полей в принципе, но если без них вам не деться, тогда вам нужно использовать свойство которое будет возвращать значение поля.
Иерархия всех модификаторов доступа: