zoukankan      html  css  js  c++  java
  • 六、数据驱动——把变化抽象成数据

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

  • 相关阅读:
    iview表单验证 只能输入小数或者整数
    iView之Modal(一级弹窗和二级弹窗)
    Vue+iView 引入iconfont
    iView爬坑记——表单验证
    有关使用 iview 表单验证的问题
    数据结构
    数学
    Zookeeper
    maven 打包
    区块链
  • 原文地址:https://www.cnblogs.com/juanzhi/p/12371041.html
Copyright © 2011-2022 走看看