私の考えでは、状態は「可動部分」に似ています。可動部分が多いほど、問題が発生する可能性が高くなります。私は国家に対して敵対的な見方をしています。好みの順序で、状態を次のようにしたい:
- 存在しない
- プライベート読み取り専用
- プライベート & パブリック読み取り専用
- プライベート読み取り/書き込み & パブリック読み取り専用
- パブリック読み取り/書き込み
状態は ivar に格納されます (明示的に宣言されているか、@synthsize を介して暗黙的に宣言されているかに関係なく)。状態へのパブリック アクセスを許可するために、アクセサ メソッドを提供します。上記の意図をコードで表現するには:
- コードを書かない
- ivar を使用し、コード コメントに依存して防止します (最適ではありません!)。
- 2 に public getter を加えたものと同じ
- ivar と public getter
- 4プラスパブリックセッター
ケース 2 をより適切に解決するにはどうすればよいですか?