シングルトンパターンを実装してみる

タイプスクリプト TypeScript

TypeScriptでシングルトンパターンの勉強をしたのでアウトプットします。

シングルトンパターンとは

シングルトンパターンとはオブジェクト指向のデザインパターンの一つで 、new でインスタンスを作成する際の数を一つしか作成できないようにしたパターンです。

ようするに、インスタンスは一つだけしか作れないということになります。

シングルトンパターンを実現するために

シングルトンパターンを実現するために以下のように記載します。

  1. コンストラクターをprivateにする(private constructor(name: string) {)
  2. staticのgetterメソッドを作成(static getInstance() {)
abstract class Type { //抽象クラス
  constructor(public carType: string) {
  }
  abstract describe(this: Type): void;
}

class Car extends Type {
  static instance: Car; //staticプロパティ
  private constructor(name: string) {
    super(name);
  }

  static getInstance() { //getterメソッド
    if (Car.instance) {
      return this.instance; //instanceがあればinstanceを返す
    }
    this.instance = new Car('セダン'); //instanceがない場合インスタンス化を実行
    return this.instance;
  }
  describe() { }
}

console.log(Car.getInstance()); //Car {carType: 'セダン'}

あまり使う頻度は多くないようですが、もう少し詳しく勉強して記事をアップデートさせていきたいです。

きせる

タクシー運転手を1年経験し、畑違いのエンジニアに転職。エンジニアに向いていないと思いつつ現在3年目。

きせるをフォローする
スポンサーリンク
TypeScript