Javaでよく使うデザインパターン入門

Javaでよくつかうデザインパターンを入門者向けにわかりやすい説明をサンプルを交えてご紹介します。これを見れば、デザインパターンを使いこなせるようになります。

Facade

Facadeとは、Javaデザインパターンのひとつであり、サブシステムを利用するユーザーの用途に合わせた窓口(インタフェース)を提供する。

シングルトン

Singletonとは、Javaデザインパターンのひとつであり、そのクラスから生成できるインスタンスの数を1つに制限する。

/**
* Singletonパターンの例
*/
public class Singleton {
    // 自身のインスタンスをpriavteなクラス変数で持つ
    private static Singleton singleton = new Singleton();

    // 外部からインスタンスを生成できないようコンストラクタをprivateにする
    private Singleton() {
    }

    /**
     * インスタンスを返すクラス関数を定義する
     * @return Singletonクラスのインスタンス
     */
    public static Singleton getInstance() {
        return singleton;
    }
}

シングルトンのデザインパターンでは、クラスをnewでインスタンス化するのではなく、インスタンスを取得するメソッドを使用する。

// Singleton singleton = new Singleton() ではない
Singleton singleton = Singleton.getInstance();