一、结构型模式常考题
常见结构型设计模式
1.装饰器模式(Decorator
):无需子类化扩展对象功能
2.代理模式(Proxy
):把一个对象的操作代理到另一个对象
3.适配器模式(Adapter
):通过一个间接层䢪配统一接口
4.外观模式(Facade
):简化复杂对象的访问问题
5.享元模式(Flyweight
):通过对象复用(池)发送资源利用,比如连接池
6.Model-View-Controller(MVC)
:解耦展示逻辑和业务逻辑
二、代理模式
什么是代理模式(Proxy
)
1.把一个对象的操作代理到另一个对象
2.这里又要提到我们之前实现的Stack
/Queue
,把操作代理到 deque
3.通常使用 has-a
组合关系
# 之前这段代码是代理模式
from collections import deque
class Stack:
def __init__(self):
self.items = deque()
def push(self, val)