上記と同様ですが、注意してください。私は Objective-C のコンテキストにのみ関心があるため、静的メソッドに対するシングルトンの利点を指摘しても意味がありません。
質問する
910 次
2 に答える
5
私は何も言わないでしょう。シングルトンはしばしば悪い習慣と見なされ、これは Obejctive-C にも当てはまります。シングルトンがクラス メソッドよりも優れたソリューションになる可能性があることの 1 つは、シングルトンはインスタンス変数にアクセスできる適切なインスタンスであるため、クラスにデータを ivar に格納する必要がある場合、シングルトンがソリューションになる可能性があることです。(しかし、シングルトンを実装する場合でも、多くの場合、静的なグローバル変数またはローカル変数を使用する必要があります。厳密に言えば、それらを完全に回避することはできません。せいぜい、それらの数を 1 つに減らすことができます。)
于 2013-02-04T21:47:32.623 に答える
2
重要な利点の 1 つは、Objective-C のクラス メソッドがデータを保持できないことです (メソッド内で static として宣言されていない限り)。一方、シングルトンでは、単一インスタンスのすべてのデータにアクセスできます
于 2013-02-04T21:47:06.673 に答える