欢迎来到3672js教程,我们关注js教程、js框架、js代码特效等。

JavaScript设计模式之外观模式实例,javascript设计模式

3672Js.Com2019-03-09 13:59 来源:未知 阅读:5302 关注度3

JavaScript设计模式之外观模式实例,javascript设计模式


外观模式(门面模式),是一种相对简单而又无处不在的模式。外观模式提供一个高层接口,这个接口使得客户端或子系统更加方便调用。

用一段再简单不过的代码来表示:

复制代码 代码如下:

var getName = function(){
return ”svenzeng”
}
var getSex = function(){
return ‘man'
}

如果你需要分别调用getName和getSex函数. 那可以用一个更高层的接口getUserInfo来调用.

复制代码 代码如下:

var getUserInfo = function(){
var info = a() + b();
return info;
}

答案是显而易见的,饭堂的炒菜师傅不会因为你预定了一份烧鸭和一份白菜就把这两样菜炒在一个锅里。他更愿意给你提供一个烧鸭饭套餐。同样在程序设计中,我们需要保证函数或者对象尽可能的处在一个合理粒度,毕竟不是每个人喜欢吃烧鸭的同时又刚好喜欢吃白菜。

外观模式还有一个好处是可以对用户隐藏真正的实现细节,用户只关心最高层的接口。比如在烧鸭饭套餐的故事中,你并不关心师傅是先做烧鸭还是先炒白菜,你也不关心那只鸭子是在哪里成长的。

最后写个我们都用过的外观模式例子:

复制代码 代码如下:

var stopEvent = function( e ){   //同时阻止事件默认行为和冒泡
e.stopPropagation();
e.preventDefault();
}


设计模式中的外观模式一般是在什情况下使用的

外观模式就是将多个关系比较复杂的类放到一个外观类中统一处理,从而外部调用起来只要与外观打交道,而不必清除内部各个类之间的调用关系,简化了客户端调用的复杂度。就像《软件秘笈-设计模式那点事》书中所列举的糖醋排骨的例子:厨师就相当于外观,我们想要吃什么东西(比如糖醋排骨)只要问厨师(调用外观)点就行了,厨师(外观)会做好了给我们,而在这个过程中,我们完全不必知道糖醋排骨的制作流程,从而减少客户端调用和各个处理类之间的耦合度。
建议你看一下《软件秘笈-设计模式那点事》这本书,例子通俗易懂,读了收获很大! 希望以上内容对你有帮助!
 

设计模式在JavaScript的开发中用处大不大?

设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。
既然是经验总结,那肯定是前人工作总结的结晶。放到哪里都是适用的,不单是java编程,现在C#很多地方都跟进设计模式。
 

本站文章为3672js教程网友分享投稿,版权归原作者,欢迎任何形式的转载,但请务必注明出处。同时文章内容如有侵犯了您的权益,请联系我们处理。
评论已被关闭
{dede:include filename="foot.htm"/}