Design Patterns Explained (3) - Facade

Facade pronounces /f2'sa:d/

"Provide a unified interface to a set of interfaces in a subsystem. Facade defines a
higher-level interface that makes the subsystem easier to use."

                                                                                            ------ GoF

intent: You want to simplify now to use an existing system. You need to define your
own interfaces.

problem: You need to use only a subset of a complex system. Or you need to inte-
act with teh system in a particular way.

This approach only works when using a subset of the system's capability or when
interacting with it in a particular way. (It seems that we do always only need the
subset of a given system.)

Variations on Facade:
     1 reduce the number of objects a client must work with
     2 supplement existing functions with new routines. In addition to using functions
        that are in the system, I also need to provide some new functionality.
     3 encapsulating layer
        Track system usage
        Swap out systems.

The facade is worthy when
       the cost of writing this new class is less than the cost of everybody learning how
to use the original system or is less than you would spend on maintenance in the
future.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值