もちろんbutton、type という名前の変数があるとします。ButtonSystem.Serializable
その変数をインスペクターを通じて割り当て可能にしたいので、次のようにしますpublic。
public class SomeScript : MonoBehaviour{
public Button button;
}
それは私にそれを与えます:
今、私はコードをクリーンで安全な(整理された)状態に保ちたいのですが、カプセル化を維持する必要がある本当の理由があります。
私は実行時にコンポーネントを取得する方法が複数あることを知っています。transform.Find("Some/Genius/TypeUnsafe/Path")または、GameObject.Find("3 seconds scene iteration").GetComponent(...).それを避けたいです。
インスペクターで変数private accessをどのように混合しますpublic accessか?
UI/ API MVC/ MVVM巨大なアプリケーションのためのパターン(実際にゲームクライアントを)と私は分離しなければならなかったUIからAPI。私は単にインスペクターの原因によって値を割り当てる必要がありました-他に方法はありません。Find()メソッドは安全ではないタイプであり、ドラッグアンドドロップで物事をまとめる方が簡単です。クラシックなOOPフレームワークを構築するのは本当に本当に難しいUnityので、このようなハックなものを探す必要があります。

privateサードパーティがフィールドにアクセスするのを防ぐことを意図したものではありません。「私が実際に行っていることに目を向けないでください」と言う方法を提供することを目的としています。つまり、それは主にアクセスできないようにします。