改造业务代码

Posted 廖振廷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了改造业务代码相关的知识,希望对你有一定的参考价值。

新手程序员,很容易犯写出面向过程的,留下很多全局变量的代码的错误。现在是时候简单的改进一下了。

    //函数原型添加一个addMethod方法,现在所有的函数都有addMethod方法了。
    Function.prototype.addMethod = function(name,fn){
        this[name] = fn;
        //在下面的的代码中,this指向methods函数。所以可以链式调用
        return this;
    };
    
    //等同于 var methods = new Function(){};
    var methods = function(){
    };
    methods
        .addMethod(‘checkName‘,function(){            console.log(‘检查了名字‘);
            return this;
        })
        .addMethod(‘checkPhone‘,function(){
            console.log(‘检查了手机‘);
            return this;
        });

    methods.checkName().checkPhone();
    //全局变量只有一个methods。这样就避免了全局变量污染。同时还有jQuery一样的链式调用。

 

 上面是函数式调用。还可以以类式的调用方式写。

 

    Function.prototype.addMethod = function(name,fn){
        this.prototype[name] = fn;
        return this;
    };

    var Methods = function(){};
    Methods
        .addMethod(‘checkName‘,function(){
            console.log(‘检查了名字‘);
            return this;
        })
        .addMethod(‘checkPhone‘,function(){
            console.log(‘检查了手机‘);
            return this;
        });

    var method=new Methods();
    method.checkName().checkPhone();

 

以上是关于改造业务代码的主要内容,如果未能解决你的问题,请参考以下文章

如何从片段中的 JSON 响应中的对象获取数据

优雅对API进行内部升级改造

Spring中的Aop

Spring中的Aop

改造一下jeecg中的部门树

一个复杂系统的拆分改造实践