设计模式
文章平均质量分 61
zxf13717561643
这个作者很懒,什么都没留下…
展开
-
设计模式-简单工厂(1,简单继承,用来比较与工厂模式的区别)
这里,就只附上简单的代码了,有兴趣的同学可以复制运行一下,主要是为了看出继承与简单工厂模式的区别 #include class Operation { private: double _numberA; double _numberB; public: //Operation(){}; double getNumberA(){ return _n原创 2015-11-06 22:41:13 · 1292 阅读 · 0 评论 -
设计模式学习-(5. 建造者模式)
建造者模式: 实现的主要是 创建一个复合的对象,最后的对象会由好几个基类合并而成。 不同于之前的模式,之前的工厂模式都是追求创建的结果, 而这里 用于合成的几个类 则是使用时的重点,以此拼合一个更复合需求的对象。 // 创建一位人类 var Human = function ( param ) { // 技能 this.skill = para原创 2018-03-06 15:54:39 · 167 阅读 · 0 评论 -
设计模式学习-(4.抽象工厂模式)
说到抽象工厂,如果有接触过别的语言的话,其他语言 大概都有个 虚函数和抽象函数,然后继承的自雷重写这个方法。利用js 也可以模拟这种操作。在这里,抽象化创建模式不是一个真实的对象实例,而是一个类簇,制定了类的结构,这也就区别于简单工厂模式创建单一对象,工厂模式创建多类对象。// 抽象工厂方法var VirtualFactory = function ( subType , superType )...原创 2018-03-06 14:39:04 · 163 阅读 · 0 评论 -
设计模式学习-(3.工厂模式)
简单工厂模式:1: 创建对象,不同类的实例化进行合并处理// 篮球基类 var Basketball = function () { this.intro = '篮球盛行于美国'; }; Basketball.prototype = { getMember: function () { console.log("每个队...原创 2018-03-06 11:02:30 · 140 阅读 · 0 评论 -
设计模式学习-(2.继承)
自己又复习了一下。详细请看之前的博客,点击这里。关于多态:众所周知,在其他语言例如c,c++,csharp,java等等语言中除了封装,继承,还有一个多态。虽然js没有强调这个,但是还是可以变相的实现这种功能的,很简单,一看就懂。 var objadd = function(){}; objadd.prototype.add = function () { var arg...原创 2018-03-05 09:31:54 · 181 阅读 · 0 评论 -
设计模式学习-(11.桥接模式)
桥接模式: 提取需求的共同点,在这里关键是脱离与this的耦合 // 提取共同点 function changeColor( dom ,color ,bg){ dom.style.color = color; dom.style.background = bg; } var spans = document.getElements原创 2018-03-07 17:09:35 · 236 阅读 · 0 评论 -
设计模式学习-(10.装饰者模式)
// 装饰者模式 : 在不改变原对象的基础上,进行功能扩展 // 功能一 ,改变字体颜色 function changeColor( n ){ $(n).css({ color: "blue" }); return this; } // 功能二,修改背景颜色 一般情况我们会在chan原创 2018-03-07 15:59:14 · 197 阅读 · 0 评论 -
设计模式学习-(9. 适配模式,代理模式)
看了书上的适配模式,感觉就是一个处理数据的函数,这个函数可以根据你的需求进行改变, 其中适配框架适配 的代码看不太懂,不细表。 代理模式: 看到的只有jsonp 处理的跨域请求, 还有 用 img的src 和 script 的src 来向跨域服务器发送字段,感觉没什么用 在这里也不细表、原创 2018-03-07 15:45:51 · 273 阅读 · 0 评论 -
设计模式学习-(8. 外观模式)
// 将需要的功能 写到一个函数里面 , 调用的时候直接调用 // 封装底层方法,类似jq var Zxf = { g : function ( id ) { return document.getElementById( id ); }, css : function ( id , key , value原创 2018-03-07 11:26:25 · 193 阅读 · 0 评论 -
设计模式学习-(7. 单例模式)
// 命名空间 var Zxf = { g : function ( id ) { return document.getElementById( id ); }, css : function ( id , key , value ) { var dom = typeof id ==='string原创 2018-03-07 10:56:09 · 154 阅读 · 0 评论 -
设计模式-简单工厂模式(实现,可与前文进行比较)
代码贴上,需要的自己看吧。废话就不多说了 // 这里才是 工厂函数的精髓 #include #include using namespace std; class Operation { private: double _numberA; double _numberB; public: //Operation(){}; double getNumberA(原创 2015-11-06 22:47:43 · 345 阅读 · 0 评论 -
设计模式学习-(6. 原型模式)
原型模式: 个人觉得跟继承里面的 组合继承没什么区别,需要注意的是: 原型模式继承下的对象,他们共享的基类 的protytype的原型函数占据的内存空间是一样,所以动一个就动了所有。 var SuperClass = function ( arg1 , arg2 ) { this.val1 = arg1; this.arg2 = arg2; };原创 2018-03-06 18:06:33 · 149 阅读 · 0 评论