zoukankan      html  css  js  c++  java
  • 代码重构之引入解释性变量

    意图

    • 临时变量可以帮助你将表达式分解为比较容易管理的形式

    • 在较长的算法中,可以运用临时变量来解释每一步运算的意义

    示例

    /**
     * 引入解释性变量之前
     * Created by luo on 2017/4/23.
     */
    public class IntroduceExplainingVariableBefore {
        private String platform;
        private String browser;
        private int resize = 0;
    
        public void test(){
            if ((platform.toUpperCase().indexOf("MAC") > -1) && (browser.toUpperCase().indexOf("IE") > -1) && wasInitialized() && resize > 0){
                //do something
            }
        }
    
        private boolean wasInitialized() {
            return false;
        }
    }
    /**
     * 引入解释性变量之后
     * Created by luo on 2017/4/23.
     */
    public class IntroduceExplainingVariableAfter {
        private String platform;
        private String browser;
        private int resize = 0;
    
        public void test() {
            final boolean isMacOs = platform.toUpperCase().indexOf("MAC") > -1;
            final boolean isIEBrowser = browser.toUpperCase().indexOf("IE") > -1;
            final boolean wasResized = resize > 0;
    
            if (isMacOs && isIEBrowser && wasInitialized() && wasResized) {
                //do something
            }
        }
    
        private boolean wasInitialized() {
            return false;
        }
    }
  • 相关阅读:
    有用的文件(配置文件)
    gulp webpack 区别
    vue ssr
    微信小程序自定义组件
    mpvue 搭建小程序
    【转】DotNet加密方式解析--非对称加密
    java RSA加密算法
    【转】C#中RSA加密解密和签名与验证的实现
    C# 字符串 分割 反转 Base64
    RSA加密算法
  • 原文地址:https://www.cnblogs.com/luoxiaolei/p/6759119.html
Copyright © 2011-2022 走看看