JavaScript 23種類の設計モードの7アダプタモード
6015 ワード
概念と特徴
コンセプト:異なるオブジェクトの統合インタフェースを呼び出し、外部から提供される名前の異なるインタフェースであれば、変換にアダプタが必要です.例えば、携帯電話の充電器の変換ヘッドは、アンドロイドの携帯電話を充電したり、アップルの携帯電話を充電したりすることができます.
特徴:
構造と実装
エージェント・モードには、ターゲット・インタフェース、アダプタ・クラスが含まれます.ターゲットインタフェース:現在のビジネスで期待されるインタフェース.抽象クラスまたはインタフェースです.≪アダプタ・クラス|Adapter Class|emdw≫:既存のコンポーネント・ライブラリのコンポーネント・インタフェース.アダプタクラス:変換器は、構成者オブジェクトを継承または参照することによって、アダプタインタフェースをターゲットインタフェースに変換し、お客様がターゲットのフォーマットでアダプタにアクセスできるようにします.<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
```javascript
let obj={
show:function () {
console.log(' 1')
}
};
let obj1={
show:function () {
console.log(' 2')
}
};
//1. show
function map(fn) {
fn.show();
};
map(obj);
map(obj1);
//2. obj1 , show, display
obj1={
display:function () {
console.log(' 2')
}
};
//3.
obj1.show = obj1.display();
//4.map
map(obj);
map(obj1);
```
シーンの適用
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
```javascript
let obj={
show:function () {
console.log(' 1')
}
};
let obj1={
show:function () {
console.log(' 2')
}
};
//1. show
function map(fn) {
fn.show();
};
map(obj);
map(obj1);
//2. obj1 , show, display
obj1={
display:function () {
console.log(' 2')
}
};
//3.
obj1.show = obj1.display();
//4.map
map(obj);
map(obj1);
インスタンスの適用
しばらくありません.
まとめ
アダプタモードは主に変換/翻訳の役割を果たします.一方、既存のビジネスロジックに使用されるのは、以前と似ていますが、呼び出されるメソッド名が異なるか、またはいくつかの違いがあります.一方、サードパーティインタフェースを呼び出すときに、サードパーティインタフェースと内部インタフェースの約束が一致しない場合は、変換にアダプタが必要です.
アダプタモードは主に変換/翻訳の役割を果たします.一方、既存のビジネスロジックに使用されるのは、以前と似ていますが、呼び出されるメソッド名が異なるか、またはいくつかの違いがあります.一方、サードパーティインタフェースを呼び出すときに、サードパーティインタフェースと内部インタフェースの約束が一致しない場合は、変換にアダプタが必要です.