デザインパターン-概要
デザインパターンは、経験豊富なオブジェクト指向ソフトウェア開発者が使用するベストプラクティスを表しています。デザインパターンは、ソフトウェア開発者がソフトウェア開発中に直面した一般的な問題の解決策です。これらのソリューションは、かなりの期間にわたって多くのソフトウェア開発者による試行錯誤によって得られました。
ギャングオブフォー(GOF)とは何ですか?
1994年に、4人の著者、エーリヒガンマ、リチャードヘルム、ラルフジョンソン、ジョンブリシディーズが、「 Design Patterns - Elements of Reusable Object-Oriented Software これは、ソフトウェア開発におけるデザインパターンの概念を開始しました。
これらの作者は総称して Gang of Four (GOF)。これらの著者によると、デザインパターンは主にオブジェクト指向設計の次の原則に基づいています。
実装ではなくインターフェースへのプログラム
継承よりもオブジェクトコンポジションを優先する
デザインパターンの使用法
デザインパターンには、ソフトウェア開発における2つの主な用途があります。
開発者向けの共通プラットフォーム
デザインパターンは標準的な用語を提供し、特定のシナリオに固有です。たとえば、シングルトンデザインパターンはシングルオブジェクトの使用を意味するため、シングルデザインパターンに精通しているすべての開発者はシングルオブジェクトを使用し、プログラムがシングルトンパターンに従っていることを互いに伝えることができます。
ベストプラクティス
デザインパターンは長期間にわたって進化しており、ソフトウェア開発中に直面する特定の問題に対する最良の解決策を提供します。これらのパターンを学ぶことは、経験の浅い開発者が簡単かつ迅速な方法でソフトウェア設計を学ぶのに役立ちます。
デザインパターンの種類
デザインパターン参考書による Design Patterns - Elements of Reusable Object-Oriented Software、作成パターン、構造パターン、行動パターンの3つのカテゴリに分類できる23のデザインパターンがあります。また、デザインパターンの別のカテゴリであるJ2EEデザインパターンについても説明します。
SN | パターンと説明 |
---|---|
1 | Creational Patterns これらのデザインパターンは、new演算子を使用してオブジェクトを直接インスタンス化するのではなく、作成ロジックを非表示にしてオブジェクトを作成する方法を提供します。これにより、プログラムは、特定のユースケースで作成する必要のあるオブジェクトをより柔軟に決定できます。 |
2 | Structural Patterns これらのデザインパターンは、クラスとオブジェクトの構成に関係しています。継承の概念は、インターフェイスを構成し、オブジェクトを構成して新しい機能を取得する方法を定義するために使用されます。 |
3 | Behavioral Patterns これらのデザインパターンは、特にオブジェクト間の通信に関係しています。 |
4 | J2EE Patterns これらのデザインパターンは、特にプレゼンテーション層に関係しています。これらのパターンは、Sun JavaCenterによって識別されます。 |