设计模式-结构型-外观模式

外观模式是一种设计模式,旨在为复杂的子系统提供一个简单的统一接口,减少系统间的耦合。通过创建一个外观类,客户端可以更方便地调用子系统的功能,而不需要了解内部实现细节。在示例中,`Computer`类作为外观,封装了`CPU`、`Disk`和`Memory`等子系统,提供了`run`和`stop`操作,提高了系统的灵活性和安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

外观模式

概述

  • 为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口是的这一子系统更容易使用

对象

  • 外观(facade)
  • 子系统类(subsystem classes)

例子

class CPU:
    def run(self):
        print("CPU run...")

    def stop(self):
        print("CPU stop...")

class Disk:
    def run(self):
        print("Disk run...")

    def stop(self):
        print("Disk stop...")

class Memory:
    def run(self):
        print("Memory run...")

    def stop(self):
        print("Memory stop...")

# facade
class Computer:
    def __init__(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()

computer = Computer()
computer.run()
computer.stop()

优点

  • 降低系统相互依赖
  • 提高了灵活性
  • 提高了安全性
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值