Objective-C でシングルトンを実現するのは、ちゃんとやろうとすると、結構手間です。例えば、ARC (Automatic Reference Counting) 無効の場合、次のブログが示しているように、シングルトンインスタンスを取得するメソッドを追加するだけでは話は終わらず、あまり直感的ではない方法で複数のメソッドをオーバーライドしなければなりません。 Objective-C でシングルトンパターン http://blog.syuhari.jp/archives/2178 ARC 有効となると、書き方も変わってきます。 言語の特性上、呼び出し側で無茶なことができてしまうケースが幾つかあるので、シングルトン実装側だけで完全性を達成しようとするのは難しいと思います。そのため、ある程度シングルトン的な構造にはしておくものの、呼び出し側がひねくれたことをやったら責任は負えないよ、という実