STUNUM

面有萌色,胸有丘壑。心有猛虎,细嗅蔷薇。

嗨,我是王鑫 (@stunum),一名 Python 开发者。


Python web开发,后端以Django框架为主,前端使用Vue.js...

python设计模式之桥接模式

桥接模式

意义:

将抽象部分与它的实现部分分离,使它们都可以独立地变化。

适用性:
  • 你不希望在抽象和它的实现部分之间有一个固定的绑定关系。例如这种情况可能是因为,在程序运行时刻实现部分应可以被选择或者切换。
  • 类的抽象以及它的实现都应该可以通过生成子类的方法加以扩充。这时Bridge 模式使你可以对不同的抽象接口和实现部分进行组合,并分别对它们进行扩充。
  • 举例:

    ``` class A(object): def run(self, name): print(f”my name is:{name}”)

class B(object): def run(self, name): print(f”我的名字是:{name}”)

class Bridge(object): def init(self, ager, classname): self.ager = ager self.classname = classname

def bridge_run(self):
    self.classname().run(self.ager)

if name == ‘main’: test = Bridge(‘李华’, ‘A’) test.bridge_run() test.ager = ‘Tome’ test.bridge_run() test.classname = ‘B’ test.bridge_run() test.ager = ‘李华’ test.bridge_run()

输出结果:

my name is:李华 my name is:Tome 我的名字是:Tome 我的名字是:李华 ```

最近的文章

python设计模式之组合模式

组合模式意义:将对象组合成树形结构以表示“部分-整体”的层次结构。C o m p o s i t e 使得用户对单个对象和组合对象的使用具有一致性。适用性: 你想表示对象的部分-整体层次结构。 你希望用户忽略组合对象与单个对象的不同,用户将统一地使用组合结构中的所有对象。举例:class ComponentBases(object): def __init__(self, name): slef.name = name def add(self, obj): ...…

水滴石穿继续阅读
更早的文章

python设计模式之适配器模式

适配器模式意义:将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。适用性: 你想使用一个已经存在的类,而它的接口不符合你的需求。 你想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口可能不一定兼容的类)协同工作。 (仅适用于对象Adapter )你想使用一些已经存在的子类,但是不可能对每一个都进行子类化以匹配它们的接口。对象适配器可以适配它的父类接口。 举...…

水滴石穿继续阅读