
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
对于大多数Java编程开发程序员来说,掌握不同的软件设计模式能够满足更多不同的软件开发需求,下面我们就通过案例分析来简单了解一下,Java编程设计模式类型都有哪些。
1.订阅-发布模式
vue的数据响应式原理就是基于发布订阅模式实现的。
2.策略模式
简单来时就是把一写具有相关性的工具方法,组合起来,以方便调用和后期增删修等维护。
3.单例模式
譬如做一个全局的弹窗原型,当需要的时候就调用生成弹窗,但是没有必要实例化多个弹窗对象,只要实例化一次然后修改里面的属性参数就可以了。
4.装饰器模式Decorator
原有的函数或组件不变,只是扩展、引用了一些方法。
5.代理模式
为一个对象提供一个代用品或占位符,以便控制对它的访问
图片懒加载:先使用一个loading图,等图片加载好了,在放到img的src属性上
函数防抖节流也是代理的一种
事件冒泡事件捕获
6.中介者模式
redux和vuex都是中介者模式的实际应用,把共享数据抽离成一个单独的store,每个需要用到的组件都store这个中介来操作对象。
目的是减少耦合
7.工厂模式
提供创建对象的接口,把对象的创建工作转交给一个外部对象。通俗的讲就是有一个模子,批量去生产。
目的是为了消除对象之间的耦合。
8.享元模式
比方说一个工厂生产了50个男内衣和50个女内衣,想要找模特拍广告宣传,一般的只需要找一男一女就可以了,而而不是找50个男模特和50个女模特。用代码实现就是采用享元模式,衣服原型-实例化50个男内衣50个女内衣,人原型-实例化男人和女人,衣服和人的原型有相关关系,彼此通过对外提供接口以达到人和衣服结合,然后拍照。
再比如弹窗,创建一个弹窗原型对外提供接口,需要用到的时候直接调用传入不同的参数就可以了,没有必要实例化多次。
其实就是抽象化提取组件
9.责任链模式(职责链模式)
使得多个对象都有机会处理请求,从而避免了请求的发送者和接收者之间的耦合关系,将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止,这就叫做职责链模式。
电商预定商品,预定额500,实付减100;预定额200,实付减50。预定500的处理函数,预定200的处理函数,
传入参数调用,处理函数依次进行捕捉拦截,如果不满足某一个处理函数的条件则放行到下一个处理函数,这样形成一个职责链。
后续若增加300的预定金额,直接编写预定额为300的处理函数,然后注册进责任链即可。
10.适配器模式
常见的,后端接口返回的数据在前端不能直接使用,需要做转化,这个时候就使用到适配器模式
只关心输入输出数据,正向和反向,有点类似于webpack的loader(只关心输入输出)
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。