9.Python_结构型模式_外观模式

1.定义

12
定义为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用
角色外观(facade):
子系统类(subsystem class) :

优点1.减少系统相互依赖,子系统相对独立
2.提高灵活性.
3.提高了安全性,为复杂的模块或子系统提供外界访问的模块,预防低水平人员带来的风险
缺点不符合开闭原则,如果要改东西很麻烦,继承重写都不合适。
应用场景1.去医院看病,可能要去挂号,门诊,划价,取药,让患者或患者家属觉得很复杂,如果有提供接待人员,只让接待人员来处理,就很方便.
2.JAVA 的三层开发模式

2.示例

#!/usr/bin/env python3
# -*- coding: utf-8 -*-


class Cpu:

    @staticmethod
    def run():
        print("CPU开始运行")

    @staticmethod
    def stop():
        print("CPU停止运行")


class Disk:
    @staticmethod
    def run():
        print("硬盘开始运行")

    @staticmethod
    def stop():
        print("硬盘停止运行")


class Memory:

    @staticmethod
    def run():
        print("硬盘开始运行")

    @staticmethod
    def stop():
        print("硬盘停止运行")


# Facade
class Computer:
    def __int__(self):
        self.cpu = Cpu()
        self.disk = Disk()
        self.memory = Memory()

    def run(self):
        self.cpu.run()
        self.disk.run()
        self.memory.run()

    def stop(self):
        self.cpu.stop()
        self.disk.stop()
        self.memory.stop()


if __name__ == '__main__':
    computer = Computer()
    computer.run()
    computer.stop()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值