ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript設計パターンのアダプターパターン入門_JavaScriptスキル

JavaScript設計パターンのアダプターパターン入門_JavaScriptスキル

WBOY
リリース: 2016-05-16 16:24:00
オリジナル
1287 人が閲覧しました

アダプターモードの説明

説明: アダプター モードは、通常、使用するインターフェイスがこのアプリケーションまたはシステムに適しておらず、中間のアダプテーション層クラスまたはオブジェクトを導入する必要がある場合に使用されます。

シナリオ: 携帯電話を購入した後、充電コードに 3 極のプラグがあることがわかりました。家には 2 極のコンセントしかありません。どうすればよいでしょうか。便利でどこでも充電できるようにするには、自宅で携帯電話を充電できるようにユニバーサル充電アダプターを購入する必要があります。そうでない場合は、そのままにしておくか、プラグのある場所に行くしかありません。 🎜>

実際の開発環境では、古いシステムやサードパーティのアプリケーションが提供するインターフェイスが私たちが定義したインターフェイスと一致しないため、そのような古いインターフェイスやサードパーティのインターフェイスはインターフェイス指向のプログラミング環境では使用できません。アダプテーション クラスを使用してアダプテーション対象のクラスを継承し、アダプテーション クラスに古いシステムまたはサードパーティ アプリケーションのインターフェイスを導入するインターフェイスを実装させます。

この方法でインターフェイス プログラミングを使用する場合、この適応クラスを使用して、古いシステムまたはサードパーティ アプリケーションのインターフェイスを間接的に呼び出すことができます。

JavaScript では、動的オブジェクト指向言語のアダプター パターンに似たコードを実装する場合、プロトタイプの継承されたインスタンスを使用して実装できますが、JavaScript にはそのような制約がありません。インターフェイスなどの場合は、インターフェイス実装クラス Target を直接実装し、同様のソース コードをシミュレートします。

ソースコード例

1. 適応するクラスとインターフェースメソッド:


コードをコピー コードは次のとおりです: function Adapte() {
This.name = '適応者';
}
Adaptee.prototype.getName = function() {
this.name を返します;
}



2. 通常の実装クラス [JavaScriptにはインターフェースがないため、実装クラスを直接提供します]

コードをコピーします コードは次のとおりです: 関数 Target() {
This.name = 'ターゲット';
}

Target.prototype.queryName= function() {
this.name を返します; }




3. 適応クラス:


コードをコピー コードは次のとおりです: function Adapte() {
This.name = '';
}

Adapte.prototype = new Adaptee();
Adapte.prototype.queryName = function() {

This.getName();

}




4. 使用方法:


コードをコピー コードは次のとおりです: var local = new Target();
local.queryName(); //通常の実装クラスを呼び出します

varadapte = new Adapte();
adapt.queryName(); //古いシステムまたはサードパーティのアプリケーション インターフェイスを呼び出します;



その他の指示

上記の 4 番目のステップで、var local と varadapt は、Java や C# などのオブジェクト指向言語のインターフェイス参照指定に似ています。


コードをコピー コードは次のとおりです: インターフェースターゲット {
パブリック文字列クエリ名();
}
// インターフェース参照は
を指します Target local = new RealTarget(); //上記の Javascript の Target 実装クラスです
local.queryName();

//アダプター
ターゲット適応 = new Adapte(); adapt.queryName();




アダプター クラスは、インターフェイスとターゲット クラスのインターフェイスを接続する中間層であることがわかります。これは、必要なターゲットが既に存在するという問題を解決するために使用されますが、これを直接使用したり、アダプター クラスと組み合わせて使用​​したりすることはできません。コード定義なので、アダプター モードを使用する必要があります。アダプター モードは、変換モードおよびパッケージ化モードとも呼ばれます。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート