JavaScript代理设计模式原理

设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。

  使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。

设计模式绝对不是纸上谈兵的知识,光看书就以为自己懂了,那只是井底之蛙之见,设计模式绝对是从实践中来到实践中去的!如果编码经验很少,也不太可能能理解好设计模式,但凡软件设计能力强的人编码功底都是相当扎实的。

  如果没有能深刻理解面向对象,也不太可能理解好设计模式,刚刚毕业或者才工作一两年就说自己面向对象能力强的人,基本上就是夸夸其谈的人。

  很明显,我就是属于那种夸夸其谈的人,哈哈,不过希望对本文的总结,让自己更加了解这些设计模式,理解的更加透彻。

var Flower = function () {
    };
    //普通模式
    var sGG = {
        sendF   lower: function (target) {
            var flower = new Flower();
            target.receiveFlower(flower);
        }
    }

    var aMM = {
        receiveFlower: function (flower) {
            console.log('aMM收到花了', flower);
        }
    }
    sGG.sendFlower(aMM);
    //设计模式, 通过别的渠道得到自己想要的
    var aGM = {
        receiveFlower: function (flower) {
            aMM.receiveFlower(flower);
        }
    }
    sGG.sendFlower(aGM);

    var bMM = {
        receiveFlower: function (flower) {
            console.log('aMM收到花了', flower);
        },
        listenGoodMood: function (fn) {
            setTimeout(function () {
                fn()
            },5000)
        }
    }
    //这里就是代理
    var bGM = {
        receiveFlower: function (flower) {
            bMM.listenGoodMood(function () {
                bMM.receiveFlower(flower)
            })
        }
    }
    sGG.sendFlower(bGM);

详细内容可参考JavaScript设计模式与开发实践

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值