デザインパターン
デザインパターンは、 ソフトウェア開発における一般的な課題に対する 正しい解決策の模範または例を表します。
デザインパターンを使用する利点は、 コードを書く時間が短縮されるため、 ワークフローの複雑さが軽減されることです。 すべてのパターンにはあらかじめ定義された名前があり、 これも開発者間のコミュニケーションを容易にします。
欠点としては、 開発者が実装する製品ですべての機能が必要でない場合でも、 選択したパターンを使用したくなる誘惑が生じることが挙げられます。
主なデザインパターンのタイプには以下があります:
- 委譲パターン (Delegation pattern) は、自身の振る舞いの実行に関する責任を 関連するオブジェクトに委譲します。
- 機能設計パターン (Functional design) は、各モジュールに特定の機能を提供し、 それが他のモジュールへの副作用を最小限に抑えて実行されるようにします。
- イミュータブルインターフェース (Immutable interface) は、不変オブジェクトを作成します。
- インターフェース (Interface) は、プログラムをより理解しやすいように構造化します。
- マーカーインターフェース (Marker interface) は、属性またはアノテーションの実装の有無を示すために使用されます。
- プロパティコンテナ (Property container) は、単にクラスを新しいプロパティで拡張するのではなく、 内部コンテナに追加のプロパティを追加します。
- イベントチャネル (Event channel) は、パブリッシャー-サブスクライバーパターンでメッセージが流れる チャネルを作成します。この目的のために、このパターンには パブリッシャーでもサブスクライバーでもなく、 それらの間の接続のみを提供する代理オブジェクトがあります。
関連項目
-
課題に対する誤った解決策を定義する
アンチパターン、
-
プログラミングへのアプローチを定義する概念のセット
プログラミングパラダイム、
-
作業量と課題の複雑さの見積もりを目的とした手法
planning-poker、
-
作業量のグラフィカルな表現に使用される図
バーンダウンチャート、