拡張インターフェースのデザインパターン

拡張インターフェース

拡張 インターフェイス設計パターンは、ソフトウェア 設計と ソフトウェア アーキテクチャ を使用してアプリケーションを構築し、変更および拡張できるようにする 方法を示します 。このため、この開発パターンを構造パターンまたはアーキテクチャ パターンに割り当てることができます。

拡張ポート

拡張可能なインターフェイス設計パターンは、ソフトウェア設計とソフトウェア アーキテクチャを使用してアプリケーションを構築し、変更および拡張できるようにする方法を示します。したがって、この開発パターンは構造パターンまたはアーキテクチャ パターンに割り当てることができます。

拡張インターフェースパターンの構造 

拡張インターフェースパターンの構造

デザインパターン の構造は  以下の通りです。

デザインパターンは以下のような構造になっています。

ルートインターフェイス

各拡張インターフェイスが提供する必要がある一般的な機能を提供します。「getExtension」メソッドは、各拡張インターフェイスが別の拡張インターフェイスを要求して役割を切り替えることができるように、各コンポーネントによって実装される必要があります。

ルートインターフェース

各拡張インターフェイスが提供する必要がある共通の機能を提供します。各拡張インターフェイスが別の拡張インターフェイスを要求して役割を切り替えることができるように、すべてのコンポーネントは「getExtension」メソッドを実装する必要があります。

拡張インターフェース

拡張インターフェイスは セマンティック 機能をグループ化する ため、依存関係が軽減されます。これは、その一般的な機能を RootInterface から継承します。そのタスクは、コンテキスト グループのロールをクライアントが利用できるようにすることです。提供されるサービスが外部からカプセル化されることが重要です。

拡張ポート

拡張インターフェイスはセマンティック 機能をグループ化し、依存関係を減らします。これは、その一般的な機能を RootInterface から継承します。そのタスクは、コンテキスト グループのロールをクライアントが利用できるようにすることです。提供されるサービスが外部からカプセル化されることが重要です。

工場

「Factory」クラスを使用して、要求された インターフェイスに適切なコンポーネントを作成します 。これは「create」メソッドを使用して行われます。
 

工場

「Factory」クラスを使用すると、要求されたインターフェイスに適切なコンポーネントを作成できます。これは「create」メソッドで行われます

クライアント

このクラスはアプリケーションの機能を実装します。これは、クライアントが拡張インターフェイスによって提供されるサービスを使用することを意味します。クライアント  常に適切な拡張インターフェイスを介してコンポーネント サービスにアクセスし、コンポーネント自体に直接アクセスすることはありません。
 

クライアント

このクラスはアプリケーション機能を実装します。これは、クライアントが拡張インターフェイスによって提供されるサービスを使用することを意味します。クライアントは、コンポーネント自体に直接アクセスするのではなく、常に適切な拡張インターフェイスを介してコンポーネント サービスにアクセスします。

成分

このクラスは複数の拡張インターフェイスを実装できるため、関連する拡張インターフェイスの機能を実装します。「getExtension」メソッドを呼び出すと、一意の (適切な) インターフェイス参照が返されます。提携工場にて製作しております。

コンポーネント

このクラスは複数の拡張インターフェイスを実装できるため、関連する拡張インターフェイスの機能を実装します。「getExtension」メソッドが呼び出されると、一意の (適切な) インターフェイス参照が返されます。関連工場で作成されます。

文学 

  • K. Eilebrecht、G. Starke: コンパクトなパターン: 効果的なソフトウェア開発のための設計パターン。 第 3 版、Spektrum Akademischer Verlag、2010 年。

文学

  • K. Eilebrecht、G. Starke:コンパクト パターン: 効果的なソフトウェア開発のためのデザイン パターン。第 3 版、Spektrum Akademischer Verlag、2010 年。

Webリンク 

Webリンク


 

生成パターン

抽象的な工場  | ビルダー  | ファクトリーメソッド  | プロトタイプ  | シングルトン  | マルチトーン  | オブジェクトプール

テクスチャパターン

アダプター  |   | デコレーター  | ファサード  | フライ級  | 複合  名詞 | 

行動パターン

オブザーバー  | 訪問者  | 通訳  | イテレータ  | コマンド  | 思い出  | テンプレートメソッド  | 戦略  | 仲介  | 状態  | 責任の連鎖  | インターセプター  | null オブジェクト  | ログスタック

オブジェクトリレーショナルマッピング パターン

データ転送オブジェクト  | テーブル データ ゲートウェイ  | 行データゲートウェイ  | アクティブなレコード  | 作業単位  | アイデンティティマップ  | 遅延読み込み  | ID フィールド  | 依存マッピング  | 埋め込まれた値  | シリアル化された LOB   | 継承マッパー  | メタデータのマッピング  | クエリオブジェクト  | コマンド、クエリ、責任の分離

メッセージパターン

メッセージ  | コマンドメッセージ  | 文書メッセージ  | イベントメッセージ  | リクエスト-リプライ  | 返送先住所  | 相関識別子  | メッセージシーケンス  | メッセージの有効期限  | フォーマットインジケータ  | メッセージチャンネル  | ポイントツーポイントチャネル  | パブリッシャー購読者チャネル  | データ型チャネル  | 無効なメッセージ チャネル  | デッドレターチャンネル  | 配達保証  | チャネルアダプター  | メッセージングブリッジ | メッセージバス  | パイプとフィルター  | メッセージルーター  | コンテンツベースルーター  | メッセージフィルター  | ダイナミックルーター  | 受信者リスト  | スプリッター  | アグリゲーター  | リシーケンサー  | 作成されたメッセージ プロセッサ  | スキャッター・ギャザー  | ルーティングスリップ  | プロセスマネージャー  | メッセージブローカー  | メッセージ翻訳者  | 封筒の包み紙  | コンテンツエンリッチャー  | コンテンツフィルター  | クレームチェック  | ノーマライザー  | 正規データモデル  | メッセージエンドポイント  | メッセージングゲートウェイ  | メッセージング マッパー  | トランザクションクライアント  | 消費者への投票  | イベント駆動型コンシューマー  | 競合する消費者  | メッセージディスパッチャー  | 選択的な消費者  | 永続的なサブスクライバー  | 冪等なレシーバ  | サービスアクティベーター  | コントロールバス  | 迂回路  | ワイヤータップ  | メッセージ履歴  | メッセージストア  | スマートプロキシ  | テストメッセージ  | チャンネルパージャー

他の

アプリケーションコントローラー  | ビジネス代表  | データ アクセス オブジェクト  | 依存関係の注入  | 拡張インターフェース  | 流暢なインターフェース  | 制御の反転 (IoC) | ロック  | モデル ビュー コントローラー (MVC) | モデル ビュー プレゼンター (MVP) | モデル ビューの更新 (MVU) | モデル ビュー ViewModel  (MVVM) | ページコントローラー  | レジストリ  | リモートファサード  | リポジトリ  | サービスロケーター  | セッション状態  |テーブルモジュール  | テンプレートビュー  | スレッドプール  | トランザクションスクリプト  | 変換ビュー  | 2 ステップ ビュー  | 値オブジェクト

カテゴリー :

からの抜粋:

https://de.wikipedia.org/wiki/Extension_Interface

おすすめ

転載: blog.csdn.net/asdcls/article/details/127548008
おすすめ