Swift シンプルなシングルトンクラスを作成する

2022/04/24に公開

シングルトンクラスとは

そもそもSingletonパターンとはなんでしょうか。

Singleton パターン(シングルトン・パターン)とは、オブジェクト指向のコンピュータプログラムにおける、デザインパターンの1つである。GoF (Gang of Four; 4人のギャングたち) によって定義された。Singleton パターンとは、そのクラスのインスタンスが1つしか生成されないことを保証するデザインパターンのことである。ロケールやルック・アンド・フィールなど、絶対にアプリケーション全体で統一しなければならない仕組みの実装に使用される

分かりましたでしょうか。

シングルトンクラスはアプリ内でインスタンスが1つしかないので、
どのタイミングで参照しても同一のインスタンスを参照します。

アプリ内でどこからも参照するものなどプロパティに追加して設定しましょう。

例えば、DeviceManagerクラスはシングルトンクラスで問題ないと思います。
何故なら常に同一の内容(保持しているデバイスID)を返却してほしいからです。

class SingletonClass {
   let str = "str" // Stringプロパティを追加している
   private init() { }
   static let shared = SingletonClass()
}

print(SingletonClass.shared.str)

Discussion