• 六、数据驱动——把变化抽象成数据


    案例1

    张牙舞爪的if-else

    if(type == "mp4"){
        isValid = true;
    }else if(type == "txt"){
       isValid = true;
    }else{
     ....
    }

    用数组装变化的数据

    string[] validTypeArray = {"mp4","txt","ppt",...}
    
    bool isValidFileType(string type){
        return validTypeArray.Contains(type);
    }

    案例2

      在批量处理数据的时候遇到一个特殊数据需要进行特别处理

    //处理特殊数据,并进行额外操作
    if(number == "123"){
        DoSomething();
    }

      这样做不是一个好办法,因为他没有预见变化。

      版本2:把数据隔离到一个数组里面

    //定义一个数组去承载这些特殊函数
    Array exceptionNumbers = {
        "123","456"
    };
    
    
    //定义一个判断函数
    bool  isExceptionNumber(string number){
        return exceptionNumbers.contains(number);
    }
    if(isExceptionNumber(string number)){
        DoSomething();
    }

      版本3:在数据驱动方法里,数据源可以转换形式,更换位置。比如将数组的数据移植到配置文件,这样它对主体代码完全是透明的,修改的风险明显降低。

  • 相关阅读:
    cannot resolve symbol 'XXX'
    jwt单点登入
    空3
    Hibernate持久化,生命周期
    Hibernate主键生成策略
    Hibernate常用api以及增删改查
    Hibernate配置流程
    Hibernate定义
    Git总结
    spring整合MQ
  • 原文地址:https://www.cnblogs.com/juanzhi/p/12371041.html
Copyright © 2020-2023  润新知