Что такое SerializeField за 1 минуту, Unity уроки
HTML-код
- Опубликовано: 18 сен 2024
- Благодарю за просмотр, это был кратчайший туториал на данном канале, надеюсь что после просмотра видео SerializeField больше не будет для вас странной загадкой опытных программистов unity = ). Обязательно подпишись, и поставь лайк.
Спасибо огромное за видео! Информативно и без воды
имба, наконец-то я узнал что это, мне говорили что это типо чтобы можно было записывать туда все данные, я думал бред и не юзал это, респект тебе!
Коротко и ясно, именно то, что искал
идеально, лайк!
Без воды и понятно
Для своих работ можно вполне использовать public int count;
В инспекторе будет тоже самое что и при SerializeField.
Однако в компаниях, при работе в основном используется SerializeField.
Видео очень хорошее, всё отлично продемонстрировано))
Лайк и подписка ))))
Но вот только какие то собственные наработки при работе в одиночку зальёш на гитхаб, а там работодатель смотрит в том числе и на правильную инкапсулированность полей. да и вообще, стоит всегда дисциплинировать себя правильно писать код, потом проще будет. если конечно не прототип простой игры какой то. там можно схалтурить, ибо осносная задача - посмотреть как будет играться.
@@flatikk Ну да, лучше всегда писать правильно, даже когда для себя, так как это в привычку входит.
спасибо большое
Красава, спасибо
Харош
спасибо!
Советовал бы уточнять что это не приватная переменная,а поле
Привет, у меня вопрос нужно ли указывать индикатор доступа private или можно просто записать, к примеру, [SerializeField] int Helth и переменная все равно будет private ?
Нужно указывать индикатор доступа [SerializeField] private int Helth;
Может поздно, но все же. По умолчанию поля и методы уже private, и его можно не писать. Но с точки зрения грамотности кода, всегда нужно явно указывать модификатор доступа
@@ReimsForYou вообще по умолчанию поля internal, а не private
@@icyfeather8651 интересно где ты такое вычитал, ибо даже в официальной документации от майков написано private. Вот вырванный кусок из доки:
Члены класса и структуры, включая вложенные классы и структуры, по умолчанию имеют доступ private.
@@ReimsForYou да, ты прав, в глаза долблюсь, прошу прощения
у меня кажется проблемы с интернетом
Что делать если когда пишу SerializeField он не подсвечуетса зеленим?
Скорее всего в Unity не указан редактор кода(или указан не корректно), который вы используете(к примеру Visual Studio), и из-за этого он не подсвечивает сериалайз филд. По гуглите как указать в юнити редактор кода, я уже не помню куда нужно заходить.
Спасибо за гайд, но меня не покидает ощущение, что писать [SerializeField] private бесполезно, ибо [SerializeField] и так будет приватным с крипте, но изменяемым в инспекторе
Если не написать private, то будет private по умолчанию, просто доступ надо указывать для читаемости, если только у вас команде есть договорённость об не указании private.
а в чём отличия от public?
К паблик переменной легко обратиться, если у тебя много строчек кода, и много людей работает над проектом, кто-то ненароком может обратиться к одной из публичных переменных и всё сломать, как можно больше переменных стараются делать приватными, к приватной переменной нельзя обратиться случайно.
А в чём отличие от public?
Ты не сможешь использовать приватную переменную в других скриптах, Сериалайз филд позволяет лишь изменять приватную переменную через инспектор юнити, но никак не через другой скрипт.
@@KirillGopienko Спасибо огромное за ответ
public чем плох в таком случае?
В том что паблик может изменить каждый, как через инспектор, так и через код.
Это будет работать со static?
Static это модификатор доступа для использования,чтобы условно не указывать полную парадигму наследования.Вообщем я бы назвал его обобщающим модификатором ибо он доступен вне зависимости от экземпляра класса.Здесь он не зачем,тк
SerializeField это просто инструмент инкапсуляции ,разрешающий внезапные изменения закрытого поля со стороны пользователя