プログラミングには、デザインパターンと呼ばれる設計手法があります。
過去作られた中で使用頻度が高い設計や使いやすい設計を体系化したものとなります。
今回はそんなデザインパターンの中の一つである「シングルトン」について書いていきます。
目次
皆で一つを使う
シングルトンとは、プログラム実行時に生成されるオブジェクトは一つのみという制限を持った設計手法です。
例えば、Twitterへの投稿を考えたとき、投稿ボタンを複数ページで用意しようとします。
そのときに、投稿ボタンが押されたら、投稿するという流れは全てのページで一緒ですよね?それであれば、皆で一つのものを使うようにすれば良いんじゃないかと思います。
皆で一つのものを使うのであれば、それぞれが用意するのではなくて、一つ作っておけば、それを使うだけで解決ですね!
シングルトンの使い所は?
複数箇所で呼ばれる処理であれば、どこか一つの箇所に書いておいて、それを使うだけでも良いんじゃないかと思われるかと思います。
実際はそのとおりで、シングルトン化を行うとクラスを生成することになるので、最低限の情報をもたせたり、ポリモーフィズムのような親子関係を持たせたりすることが違いになるのではないかと思います。
また、クラスの生成は処理の中でも時間がかかる処理になります。先にシングルトンとしてオブジェクトを作っておくことで、クラス生成の時間を少なくできることもメリットとしてあげられるでしょう。
まとめ
シングルトンというデザインパターンがあります。シングルトンは、プログラム中にオブジェクトが一つしか存在できないという設計です。
持つ情報は少なく、ロジックが様々な場所で使われるようなケースで使ってみるのが良いでしょう。