创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
策略模式:
策略模式的用意是针对一组算法或逻辑,将每一个算法或逻辑封装到具有共同接口的独立的类中,从而使得它们之间可以相互替换。
例如:我要做一个不同会员打折力度不同的三种策略,初级会员,中级会员,高级会员(三种不同的计算)。
例如:我要一个支付模块,我要有微信支付、支付宝支付、银联支付等
外观模式
外观模式:也叫门面模式,隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。
它向现有的系统添加一个接口,用这一个接口来隐藏实际的系统的复杂性。
使用外观模式,他外部看起来就是一个接口,其实他的内部有很多复杂的接口已经被实现
外观模式例子
用户注册完之后,需要调用阿里短信接口、邮件接口、微信推送接口。