设计模式
%。濤&%
这个作者很懒,什么都没留下…
展开
-
headfirsh设计模式——总结
设计模式 OO(面向对象,Object Oriented)的基础:抽象、封装、多态、继承 OO模式(策略模式):定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户 OO原则: 封装变化,找出应用中可能需要变化之处,把他们独立出来,不要和那些不需要变化的代码混在一起 针对接口编程, 而不是针对实现编程(每行为都用一个接口实现) 多用组合,少用继承 观察者模式(Observer) 观察者模式,定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有原创 2022-02-02 15:52:19 · 592 阅读 · 0 评论 -
headfirsh设计模式——适配器模式例子
class earphone(object): def __init__(self): print("这是一副有线耳机") def threefive(self): print("3.5mm耳机连接设备") def link(self): self.threefive() class erjiAdapter(earphone): def __init__(self, erji): self.erji = erji def link(self): print("typeC原创 2022-02-02 15:51:17 · 554 阅读 · 0 评论 -
headfirsh设计模式——命令模式例子
""" 命令模式 """ class Command(object): def execute(self): pass class Light(object): def __init__(self): pass def on(self): print("灯开了") class LightOnCommand(Command): def __init__(self, light): self.Light = light def execute(self): print("执原创 2022-02-02 15:48:39 · 268 阅读 · 0 评论 -
headfirsh设计模式——单件模式例子
""" 单件模式 """ public class Singleton{ private static Singleton uniqueInstance; private Singleton(){} public static Singleton getInstance(){ if (uniqueInstance == null){ uniqueInstance = new Singleton(); } ret原创 2022-02-02 15:45:39 · 335 阅读 · 0 评论 -
headfirsh设计模式——抽象工厂模式例子
""" 抽象工厂模式 """ class PizzaIngredientFactory(object): def __init__(self): pass def createDough(self): pass def createSauce(self): pass def createCheese(self): pass def createVeggies(self): pass def createPepperoni(self): pass def c原创 2022-02-02 15:44:13 · 754 阅读 · 0 评论 -
headfirsh设计模式——工厂模式例子
""" 工厂模式 """ class NoodleFactory(object): def __init__(self): pass def CreateNoodel(self, sType): if sType == "拉面": LaNoodle() elif sType == "泡面": PaoNoodle() elif sType == "炸酱面": ZhajiangNoodle() elif sType == "热干面": ReganNoodle()原创 2022-02-02 15:29:08 · 409 阅读 · 0 评论 -
headfirsh设计模式——装饰器模式例子
""" 装饰器模式 """ class Drink(object): def __init__(self): self.Cost = 0 self.Desc = "" def getDesc(self): return self.Desc def cost(self): pass class FruitDrink(Drink): def __init__(self): super(FruitDrink, self).__init__() def getDesc(se原创 2022-02-02 15:26:58 · 902 阅读 · 0 评论 -
headfirsh设计模式——观察者模式例子
""" 观察者模式 """ class Subject(object): def RegisterObserver(self, pObserver): # 注册 pass def RemoveObserver(self, pObserver): # 删除 pass def NotifyObserver(self): # 触发监听 pass class Observer(object): def Update(self, *args): print("更新了数据") pr原创 2022-02-02 15:23:32 · 199 阅读 · 0 评论