首页 > 代码库 > 【设计模式】学习进度
【设计模式】学习进度
1、策略模式:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。
eg 鸭子
2、观察者模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。
eg 气象台
3、装饰对象:动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。
装饰者和被装饰者具有共同的超类。
eg starbuzz
4、工厂模式
所有工厂模式都用来封装对象的创建。
(1)简单工厂:只是把具体制造不同种类pizza的过程放到工厂里。
(2)工厂方法模式(Factory Method):定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。
通过让子类决定该创建的对象是什么,来达到将对象创建的过程封装的目的。
eg 不同地方做不同地方特色口味的pizza
创建者Creator:通常包含依赖子抽象产品的代码,而抽象产品由子类制造,创建者不需要真的知道在制造哪种具体产品。
产品类Product
产品类和创建者类平行。
(3)抽象工厂模式:提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。
每一个具体工厂都能生产一个产品家族。客户创建产品时,只需要使用某一个具体工厂,而不需实例化任何产品对象。
eg 不同地区有不同的工厂来制造不同的调料(调料包括很多不同种类,也就是产品家族)
5、单件模式:确保一个类只有一个实例,并提供一个全局访问点。
【设计模式】学习进度
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。