はじめに
ソフトウェア システムでは、「複雑なオブジェクト」の作成に直面することがあります。通常、この複雑なオブジェクトの各部分は、要件の変更により、特定のアルゴリズムを使用して各部分のサブオブジェクトで構成されます。劇的な変化に直面していますが、それらを組み合わせるアルゴリズムは比較的安定しています。この変化にどう対処すればよいでしょうか?要件の変化に応じてシステム内の「安定した構築アルゴリズム」が変化しないように、「複雑なオブジェクトのさまざまな部分」の変更を分離する「カプセル化メカニズム」をどのように提供するか?これはビルダーパターンと呼ばれるものです。
ビルダー パターンは、複雑なオブジェクトの構築をその表現から分離できるため、同じ構築プロセスで異なる表現を作成できます。つまり、ビルダー モードを使用する場合、ユーザーはそれらを取得するために構築するタイプを指定する必要があり、特定の構築プロセスや詳細を知る必要はありません。
テキスト
このモードは比較的単純です。最初にコーディングしてから説明します。
var el = document.querySelector('#test');
el.addEventListener('click', getBeerByIdBridge, false);
関数 getBeerByIdBridge(e) {
GetBeerById(this.id, 関数 (ビール) {
console.log('リクエストされたビール: ' ビール);
});
}
ビルダーの定義によれば、外観はコールバックです。つまり、データを取得した後の表示と処理はコールバック関数に依存します。これに対応して、コールバック関数は取得方法を意識する必要はありません。同じ例 jquery の ajax メソッドにも、多くのコールバック関数 (成功、エラー コールバックなど) があり、主な目的は責任の分離であることがわかります。
同様に別の jQuery の例:
概要
ビルダー パターンは主に「複雑なオブジェクトを段階的に構築する」ために使用されます。「段階的に」は安定したアルゴリズムですが、複雑なオブジェクトのさまざまな部分は頻繁に変更されます。その利点は次のとおりです。テクノロジー」が公開され、これによりビルダー モードがより柔軟になり、ビルダー モードでは組み立てプロセスと特定のパーツの作成が分離されるため、各パーツがどのように組み立てられるかを気にする必要がなくなります。