簡體   English   中英

可以將此(下)視為外觀(結構設計模式)嗎?

[英]Can this (below) be considered a facade (structural design pattern)?

function BankOperationChecker() {
    //This is the facade
    this.applyFor = function(facadeMethods) {
        for (var method in facadeMethods) {
            facadeMethods[method]();
        }
    }
}

function BankClient(name, amount) {
    this.name = name;
    this.amount = amount;
    this.bankOperations = new BankOperationChecker();
}

var client = new BankClient("Davi Vieira", 2000);
var checkMethods = {
    cleanBackground: function() {
        console.log('The background of this client is clean.');
    },
    canGetCredit: function() {
        if (client.amount > 1000) {
            console.log('Can get credit!');
        } else {
            console.log('Cannot get credit!');
        }
    }
}

client.bankOperations.applyFor(checkMethods);

你怎么看? 入口的門面只是一個...但是對嗎? 關於創建外牆是否有任何特定規則?

不,不能。

立面的英文意思是“建築物的外觀,尤其是可俯瞰街道或開放空間的主要正面”。 因此,許多人將Facade模式混淆為其他入口的入口,但是事實並非如此。

按照這個 ,后面門面模式的意圖是:

  • 為子系統中的一組接口提供統一的接口。 Facade定義了一個更高級別的界面,使子系統更易於使用。
  • 用一個更簡單的接口包裝一個復雜的子系統。

您的示例既沒有一堆子系統,也沒有一個接口來包裝所有子系統。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM